FedoraMD.org Wiki wiki http://www.fedora.md/wiki/%D0%97%D0%B0%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D0%B0 MediaWiki 1.34.3 first-letter Медиа Служебная Обсуждение Участник Обсуждение участника FedoraMD.org Wiki Обсуждение FedoraMD.org Wiki Файл Обсуждение файла MediaWiki Обсуждение MediaWiki Шаблон Обсуждение шаблона Справка Обсуждение справки Категория Обсуждение категории Гаджет Обсуждение гаджета Определение гаджета Обсуждение определения гаджета Pagina principală 0 3 5 2008-04-20T19:02:27Z OlegA 1 a mutat [[Pagina principală]] la [[Ro:Pagina principală]] wikitext text/x-wiki #REDIRECT [[Ro:Pagina principală]] caa379c3a782a32f6db8611be3d683e2efebfd94 16 5 2008-04-20T19:17:19Z OlegA 1 wikitext text/x-wiki ##REDIRECT [[Ro:Pagina principală]] 9de176eccf92f7e21fa2ef7f7dc68fba8b318927 17 16 2008-04-20T19:19:37Z OlegA 1 wikitext text/x-wiki [[ru:Заглавная_страница]] 698d3d7eba21a1b6ebbf6a8ea42e2e99722f3a6c 31 17 2008-05-04T20:18:44Z OlegA 1 wikitext text/x-wiki = FedoraMD.org Wiki = '''Bine aţi venit în lume Fedora Linux.''' Aici puteţi găsi întrebări fracvente şi soluţii, exemple de setări şi sfaturi aplicabile nu doar la [[Fedora Linux/ro|Fedora Linux]], dar şi la alte distribuţii Linux. De asemenea avem [[Articole|articole]], care vă vor ajuta să descoperiţi diversa lume a sistemelor Linux. Site-ul este bazat pe tehnologia [wikimedia:ro:Wiki|Wiki]. După înregistrare veţi putea schimba parametrii utilizator, a edita şi crea pagini. Funcţie utilă - [[Special:Search|căutare]]. Căutare se execută peste tot conţinutul site-ului. = Secţii = * [[Instalare şi configurare]] * [[Programe]] * [[FAQ/ro|FAQ]] * [[Articole]] * [[Referinţe]] * [[Descarcă]] [[ru:Заглавная_страница]] ca7eff5b94cb558b996b86ea8efaa65fc33926d0 34 31 2008-05-05T20:18:57Z OlegA 1 /* FedoraMD.org Wiki */ wikitext text/x-wiki = FedoraMD.org Wiki = '''Bine aţi venit în lume Fedora Linux.''' Aici puteţi găsi întrebări fracvente şi soluţii, exemple de setări şi sfaturi aplicabile nu doar la [[Fedora Linux/ro|Fedora Linux]], dar şi la alte distribuţii Linux. De asemenea avem [[Articole|articole]], care vă vor ajuta să descoperiţi diversa lume a sistemelor Linux. Site-ul este bazat pe tehnologia [[wikipedia:ro:Wiki|Wiki]]. După înregistrare veţi putea schimba parametrii utilizator, a edita şi crea pagini. Funcţie utilă - [[Special:Search|căutare]]. Căutare se execută peste tot conţinutul site-ului. = Secţii = * [[Instalare şi configurare]] * [[Programe]] * [[FAQ/ro|FAQ]] * [[Articole]] * [[Referinţe]] * [[Descarcă]] [[ru:Заглавная_страница]] 87b580a26815bafe2a5750ef3c216e7371bd7af3 43 34 2008-05-05T20:46:53Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Bine aţi venit în lume Fedora Linux.''' Aici puteţi găsi întrebări fracvente şi soluţii, exemple de setări şi sfaturi aplicabile nu doar la [[Fedora Linux/ro|Fedora Linux]], dar şi la alte distribuţii Linux. De asemenea avem [[Articole|articole]], care vă vor ajuta să descoperiţi diversa lume a sistemelor Linux. Site-ul este bazat pe tehnologia [[wikipedia:ro:Wiki|Wiki]]. După înregistrare veţi putea schimba parametrii utilizator, a edita şi crea pagini. Funcţie utilă - [[Special:Search|căutare]]. Căutare se execută peste tot conţinutul site-ului. == Secţii == * [[Instalare şi configurare]] * [[Programe]] * [[FAQ/ro|FAQ]] * [[Articole]] * [[Referinţe]] * [[Descarcă]] [[ru:Заглавная_страница]] 2aa0b32a1a74f62acf201640301101b82ed21aa5 69 43 2008-05-08T20:00:00Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Bine aţi venit în lume Fedora Linux.''' Aici puteţi găsi întrebări fracvente şi soluţii, exemple de setări şi sfaturi aplicabile nu doar la [[Fedora Linux/ro|Fedora Linux]], dar şi la alte distribuţii Linux. De asemenea avem [[:Category:Articole|articole]], care vă vor ajuta să descoperiţi diversa lume a sistemelor Linux. Site-ul este bazat pe tehnologia [[wikipedia:ro:Wiki|Wiki]]. După înregistrare veţi putea schimba parametrii utilizator, a edita şi crea pagini. Funcţie utilă - [[Special:Search|căutare]]. Căutare se execută peste tot conţinutul site-ului. == Secţii == * [[Instalare şi configurare]] * [[Programe]] * [[FAQ/ro|FAQ]] * [[:Category:Articole|Articole]] * [[Referinţe]] * [[Descarcă]] [[ru:Заглавная_страница]] e44a8ee24d39130a873bb9a19a2b8fbb4147b6c9 93 69 2008-05-16T12:02:56Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Bine aţi venit în lume Fedora Linux.''' Aici puteţi găsi întrebări fracvente şi soluţii, exemple de setări şi sfaturi aplicabile nu doar la [[Fedora Linux/ro|Fedora Linux]], dar şi la alte distribuţii Linux. De asemenea avem [[:Category:Articole|articole]], care vă vor ajuta să descoperiţi diversa lume a sistemelor Linux. Site-ul este bazat pe tehnologia [[wikipedia:ro:Wiki|Wiki]]. După înregistrare veţi putea schimba parametrii utilizator, a edita şi crea pagini. Funcţie utilă - [[Special:Search|căutare]]. Căutare se execută peste tot conţinutul site-ului. == Secţii == * [[Instalare şi configurare]] * [[Programe]] * [[FAQ/ro|FAQ]] * [[:Category:Articole|Articole]] * [[Referinţe]] [[ru:Заглавная_страница]] c577e2d7a46c7827c330e994f96489d35dfca1ed Заглавная страница 0 17 32 2008-05-04T21:08:05Z OlegA 1 Новая: = FedoraMD.org Wiki = '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на ... wikitext text/x-wiki = FedoraMD.org Wiki = '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[Статьи|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. = Разделы = * [[Установка и настройка]] * [[Программное обеспечение]] * [[FAQ]] * [[Статьи]] * [[Ссылки]] * [[Скачать]] * [[Статистика]] [[ro:Pagina_principală]] 896d097c5d8b90028a9888af37f14d3dd93b6b47 41 32 2008-05-05T20:46:27Z OlegA 1 /* FedoraMD.org Wiki */ wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[Статьи|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. = Разделы = * [[Установка и настройка]] * [[Программное обеспечение]] * [[FAQ]] * [[Статьи]] * [[Ссылки]] * [[Скачать]] * [[Статистика]] [[ro:Pagina_principală]] 1064c9a9d29d94e1fa3ef74a46d938aec65509d0 42 41 2008-05-05T20:46:39Z OlegA 1 /* Разделы */ wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[Статьи|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[Установка и настройка]] * [[Программное обеспечение]] * [[FAQ]] * [[Статьи]] * [[Ссылки]] * [[Скачать]] * [[Статистика]] [[ro:Pagina_principală]] 03944300d8da0c89fdbeedb00f66d880612ffe98 68 42 2008-05-08T19:58:26Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статьи|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[Установка и настройка]] * [[Программное обеспечение]] * [[FAQ]] * [[:Category:Статьи|Статьи]] * [[Ссылки]] * [[Скачать]] * [[Статистика]] [[ro:Pagina_principală]] e81bf36274d1c95d42cfa7b3566d31881e3aa70f 79 68 2008-05-14T14:30:09Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статья|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[Установка и настройка]] * [[Программное обеспечение]] * [[FAQ]] * [[:Category:Статья|Статьи]] * [[Ссылки]] * [[Скачать]] * [[Статистика]] [[ro:Pagina_principală]] 8f4a33b17183ebb15f7e5d84ed5f2a463c512d45 81 79 2008-05-14T14:37:11Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статья|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[Установка и настройка]] * [[Программное обеспечение]] * [[FAQ]] * [[:Category:Статья|Статьи]] * [[Статистика]] [[ro:Pagina_principală]] 679e18dbaebcc333ed0d5887eb132cea3aa94154 85 81 2008-05-14T14:55:26Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статья|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[:Category:Установка и настройка|Установка и настройка]] * [[Программное обеспечение]] * [[FAQ]] * [[:Category:Статья|Статьи]] * [[Статистика]] [[ro:Pagina_principală]] 251d48f3e3c01d28b5ec8eef71b2775381324092 Справка:Справка по редактированию 12 18 33 2008-05-04T21:15:07Z OlegA 1 Новая: ;Редактирование :[[Help:Editing pages/ru|Редактирование страниц]] :[[Help:Formatting/ru|Форматирование]] :[[Help:Links/ru|Ссылки]] ... wikitext text/x-wiki ;Редактирование :[[Help:Editing pages/ru|Редактирование страниц]] :[[Help:Formatting/ru|Форматирование]] :[[Help:Links/ru|Ссылки]] :[[Help:Categories/ru|Категории]] ;Расширенное редактирование :[[Help:Images/ru|Изображения]] :[[Help:Tables/ru|Таблицы]] :[[Help:Templates/ru|Шаблоны]] :[[Help:Variables/ru|Переменные]] :[[Help:Managing files/ru|Управление файлами]] [[Category:Справка|Editing]] bf527e4b652095398872f866ad00ad48e4d11ee1 70 33 2008-05-08T20:22:53Z OlegA 1 wikitext text/x-wiki == Редактирование == * [[Справка:Редактирование страниц|Редактирование страниц]] * [[Справка:Создание новой страницы|Создание новой страницы]] * [[Справка:Форматирование|Форматирование]] * [[Справка:Ссылки|Ссылки]] * [[Справка:Личная страница участника|Личная страница участника]] * [[Справка:Страницы обсуждений|Страницы обсуждений]] === Расширенное редактирование === * [[Справка:Изображения|Изображения]] * [[Справка:Таблицы|Таблицы]] * [[Справка:Категории|Категории]] * [[Справка:Подстраницы|Подстраницы]] * [[Справка:Управление файлами|Управление файлами]] * [[Справка:Перемещение страниц|Перемещение (переименование) страниц]] * [[Справка:Перенаправления|Перенаправления]] * [[Справка:Удаление страниц|Удаление страниц]] * [[Справка:Защищённые страницы|Защищённые страницы]] * [[Справка:Шаблоны|Шаблоны]] * [[Справка:Переменные|Переменные]] * [[Справка:Пространства имён|Пространства имён]] * [[Справка:Интервики-ссылки|Интервики-ссылки]] [[Category:Справка]] ca0db4f5856c9a3dbd9394cc358f48f0df3fc923 71 70 2008-05-08T20:23:19Z OlegA 1 wikitext text/x-wiki == Редактирование == * [[Справка:Редактирование страниц|Редактирование страниц]] * [[Справка:Создание новой страницы|Создание новой страницы]] * [[Справка:Форматирование|Форматирование]] * [[Справка:Ссылки|Ссылки]] * [[Справка:Личная страница участника|Личная страница участника]] * [[Справка:Страницы обсуждений|Страницы обсуждений]] === Расширенное редактирование === * [[Справка:Изображения|Изображения]] * [[Справка:Таблицы|Таблицы]] * [[Справка:Категории|Категории]] * [[Справка:Подстраницы|Подстраницы]] * [[Справка:Управление файлами|Управление файлами]] * [[Справка:Перемещение страниц|Перемещение (переименование) страниц]] * [[Справка:Перенаправления|Перенаправления]] * [[Справка:Удаление страниц|Удаление страниц]] * [[Справка:Защищённые страницы|Защищённые страницы]] * [[Справка:Шаблоны|Шаблоны]] * [[Справка:Переменные|Переменные]] * [[Справка:Пространства имён|Пространства имён]] * [[Справка:Интервики-ссылки|Интервики-ссылки]] [[Category:Справка|Справка по редактированию]] 469e6f0154bc5360d1b8cbe176ff413eb1c5191b 92 71 2008-05-16T11:56:42Z OlegA 1 wikitext text/x-wiki == Редактирование == * [[Справка:Редактирование страниц|Редактирование страниц]] * [http://www.mediawiki.org/wiki/Help:Starting_a_new_page/ru Создание новой страницы] * [[Справка:Форматирование|Форматирование]] * [[Справка:Ссылки|Ссылки]] === Расширенное редактирование === * [[Справка:Изображения|Изображения]] * [[Справка:Таблицы|Таблицы]] * [http://www.mediawiki.org/wiki/Help:Managing_files/ru Управление файлами] * [http://www.mediawiki.org/wiki/Help:Moving_a_page/ru Перемещение (переименование) страниц] * [http://www.mediawiki.org/wiki/Help:Redirects/ru Перенаправления] * [http://www.mediawiki.org/wiki/Help:Deleting_a_page/ru Удаление страниц] * [http://www.mediawiki.org/wiki/Help:Variables/ru Переменные] * [http://www.mediawiki.org/wiki/Help:Namespaces/ru Пространства имён] [[Category:Справка|Справка по редактированию]] 45ef8e4ffd2f0a39530fff2644e08199df6a66d5 Fedora Linux 0 19 35 2008-05-05T20:21:57Z OlegA 1 Новая: = Fedora Core = '''Fedora Core''' - операционная система и платформа, основанная на Linux, которую каждый может свободн... wikitext text/x-wiki = Fedora Core = '''Fedora Core''' - операционная система и платформа, основанная на Linux, которую каждый может свободно использовать, изменять и распространять сегодня и в дальнейшем. Она разрабатывается большим сообществом людей, которые стремятся обеспечивать и поддерживать лучшее в стандартах свободного программного обеспечения. Fedora Core - часть проекта Fedora Project, спонсируемого Red Hat, Inc. Fedora - это свободная и открытая операционная система. Любой может загрузить, использовать, изменять, и распространять ее без всяких ограничений. = Материал из Википедии — свободной энциклопедии = '''Fedora Core''' (англ. мягкая фетровая шляпа) — дистрибутив открытой операционной системы Linux. Этот дистрибутив спонсируется фирмой Red Hat и поддерживается общественностью. Проект служит для тестирования новых технологий, которые в дальнейшем включаются в продукты Red Hat и других производителей. Этот проект не поддерживается фирмой Red Hat, Inc. Цель проекта Fedora — построение целостной операционной системы из свободного программного обеспечения. Версии выходят с периодичностью 2—3 раза в год по доступному расписанию. = Как получить Fedora = Есть большое количество способов получить Fedora. Вот - немногие: * [http://fedoraproject.org/wiki/Distribution/Download Скачать] / [http://repo.fedoramd.org/ MD-IX (FTP)] и записать на ваше собственные CDs/DVDs * Получите Fedora от Продавца Третьего лица * Спонсор или Запрос из Программы Распределения СМИ * Использовать сетевую установку * Скачать один маленький CD и установить из Интернета. = Маркетинг = [[Баннеры]] e3892c2631194feffbad9669f0862d8c50dc065e 36 35 2008-05-05T20:23:01Z OlegA 1 wikitext text/x-wiki = Fedora Core = '''Fedora Core''' - операционная система и платформа, основанная на Linux, которую каждый может свободно использовать, изменять и распространять сегодня и в дальнейшем. Она разрабатывается большим сообществом людей, которые стремятся обеспечивать и поддерживать лучшее в стандартах свободного программного обеспечения. Fedora Core - часть проекта Fedora Project, спонсируемого Red Hat, Inc. Fedora - это свободная и открытая операционная система. Любой может загрузить, использовать, изменять, и распространять ее без всяких ограничений. = Материал из Википедии — свободной энциклопедии = '''Fedora Core''' (англ. мягкая фетровая шляпа) — дистрибутив открытой операционной системы Linux. Этот дистрибутив спонсируется фирмой Red Hat и поддерживается общественностью. Проект служит для тестирования новых технологий, которые в дальнейшем включаются в продукты Red Hat и других производителей. Этот проект не поддерживается фирмой Red Hat, Inc. Цель проекта Fedora — построение целостной операционной системы из свободного программного обеспечения. Версии выходят с периодичностью 2—3 раза в год по доступному расписанию. = Как получить Fedora = Есть большое количество способов получить Fedora. Вот - немногие: * [http://fedoraproject.org/wiki/Distribution/Download Скачать] / [http://repo.fedoramd.org/ MD-IX (FTP)] и записать на ваше собственные CDs/DVDs * Получите Fedora от Продавца Третьего лица * Спонсор или Запрос из Программы Распределения СМИ * Использовать сетевую установку * Скачать один маленький CD и установить из Интернета. = Маркетинг = [[Баннеры]] [[ro:Fedora_Linux/ro]] e06fecc2851605b64bd91cdf020a956dd2221c1e 44 36 2008-05-05T20:51:36Z OlegA 1 wikitext text/x-wiki == Fedora Core == '''Fedora Core''' - операционная система и платформа, основанная на Linux, которую каждый может свободно использовать, изменять и распространять сегодня и в дальнейшем. Она разрабатывается большим сообществом людей, которые стремятся обеспечивать и поддерживать лучшее в стандартах свободного программного обеспечения. Fedora Core - часть проекта Fedora Project, спонсируемого Red Hat, Inc. Fedora - это свободная и открытая операционная система. Любой может загрузить, использовать, изменять, и распространять ее без всяких ограничений. == Материал из Википедии — свободной энциклопедии == '''Fedora Core''' (англ. мягкая фетровая шляпа) — дистрибутив открытой операционной системы Linux. Этот дистрибутив спонсируется фирмой Red Hat и поддерживается общественностью. Проект служит для тестирования новых технологий, которые в дальнейшем включаются в продукты Red Hat и других производителей. Этот проект не поддерживается фирмой Red Hat, Inc. Цель проекта Fedora — построение целостной операционной системы из свободного программного обеспечения. Версии выходят с периодичностью 2—3 раза в год по доступному расписанию. == Как получить Fedora == Есть большое количество способов получить Fedora. Вот - немногие: * [http://fedoraproject.org/wiki/Distribution/Download Скачать] / [http://repo.fedoramd.org/ MD-IX (FTP)] и записать на ваше собственные CDs/DVDs * Получите Fedora от Продавца Третьего лица * Спонсор или Запрос из Программы Распределения СМИ * Использовать сетевую установку * Скачать один маленький CD и установить из Интернета. == Маркетинг == [[Баннеры]] [[ro:Fedora_Linux/ro]] 37a537f7aa5fb43d2272ab5771b9234e9247df92 49 44 2008-05-06T08:44:05Z OlegA 1 wikitext text/x-wiki == Fedora Core == '''Fedora Core''' - операционная система и платформа, основанная на Linux, которую каждый может свободно использовать, изменять и распространять сегодня и в дальнейшем. Она разрабатывается большим сообществом людей, которые стремятся обеспечивать и поддерживать лучшее в стандартах свободного программного обеспечения. Fedora Core - часть проекта Fedora Project, спонсируемого Red Hat, Inc. Fedora - это свободная и открытая операционная система. Любой может загрузить, использовать, изменять, и распространять ее без всяких ограничений. == Материал из Википедии — свободной энциклопедии == '''Fedora Core''' (англ. мягкая фетровая шляпа) — дистрибутив открытой операционной системы Linux. Этот дистрибутив спонсируется фирмой Red Hat и поддерживается общественностью. Проект служит для тестирования новых технологий, которые в дальнейшем включаются в продукты Red Hat и других производителей. Этот проект не поддерживается фирмой Red Hat, Inc. Цель проекта Fedora — построение целостной операционной системы из свободного программного обеспечения. Версии выходят с периодичностью 2—3 раза в год по доступному расписанию. == Как получить Fedora == Есть большое количество способов получить Fedora. Вот - немногие: * [http://fedoraproject.org/wiki/Distribution/Download Скачать] / [http://repo.fedoramd.org/ MD-IX (FTP)] и записать на ваше собственные CDs/DVDs * Получите Fedora от Продавца Третьего лица * Спонсор или Запрос из Программы Распределения СМИ * Использовать сетевую установку * Скачать один маленький CD и установить из Интернета. [[ro:Fedora_Linux/ro]] 7d0f2ce47ba6c4fce2ce5d8c54834d63d6c3eccf Test 0 20 37 2008-05-05T20:35:06Z OlegA 1 Новая: == Заголовок 2 == Это только предварительный просмотр, текст ещё не записан! === Заголовок 3 === Это только ... wikitext text/x-wiki == Заголовок 2 == Это только предварительный просмотр, текст ещё не записан! === Заголовок 3 === Это только предварительный просмотр, текст ещё не записан! ==== Заголовок 4 ==== Это только предварительный просмотр, текст ещё не записан! 4568f994c93cde4d31896bce89c799d3dcb727f3 38 37 2008-05-05T20:35:56Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== 372fe15427e9b3c4d4317963b65e54cec335245a 39 38 2008-05-05T20:43:37Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== ===== Заголовок 5 ===== ====== Заголовок 6 ====== bc240dc37b4b267b4684aebe6a772e2d659261b5 40 39 2008-05-05T20:43:49Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== ===== Заголовок 5 ===== 7cbc92c06e0e5079353080b2035e7f3450332949 45 40 2008-05-06T06:22:01Z 195.22.241.130 0 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== ===== Заголовок 5 ===== '''Полужирное начертание''' 937f39184a44da9955531637bc8f363a217b5726 46 45 2008-05-06T06:28:38Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== ===== Заголовок 5 ===== '''Полужирное начертание''' http://www.fedoramd.org/ f84231f9aa010c98daecec7487421a4186fdd4aa 47 46 2008-05-06T08:23:24Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== ===== Заголовок 5 ===== '''Полужирное начертание''' 937f39184a44da9955531637bc8f363a217b5726 48 47 2008-05-06T08:28:59Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' f675e3039722c0cbeb809558c2657a085525e0e5 Modern Hardware 0 22 51 2008-05-06T08:48:59Z OlegA 1 Новая: ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный ... wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware 9e1d2da2e50215fa725cb39df3a2b65f23fafa17 56 51 2008-05-06T09:16:08Z OlegA 1 wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статьи]] 58667e77bdc07d9e43773ed820b5c6998726e1d0 59 56 2008-05-06T13:16:42Z OlegA 1 wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статьи|{{PAGENAME}}]] 252bf12fe7e113e504dc513fe50a27d2f8f01b05 60 59 2008-05-06T13:18:11Z OlegA 1 wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статьи|Modern_Hardware]] 4adfa0bfaa5767734e470f6cca9f620fa6a69034 61 60 2008-05-06T13:19:02Z OlegA 1 «[[Статьи:Modern Hardware]]» переименована в «[[Статья:Modern Hardware]]» wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статьи|Modern_Hardware]] 4adfa0bfaa5767734e470f6cca9f620fa6a69034 65 61 2008-05-08T19:54:49Z OlegA 1 «[[Статья:Modern Hardware]]» переименована в «[[Modern Hardware]]» wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статьи|Modern_Hardware]] 4adfa0bfaa5767734e470f6cca9f620fa6a69034 74 65 2008-05-14T14:27:46Z OlegA 1 «[[Modern Hardware]]» переименована в «[[Статьи:Modern Hardware]]» wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статьи|Modern_Hardware]] 4adfa0bfaa5767734e470f6cca9f620fa6a69034 76 74 2008-05-14T14:28:30Z OlegA 1 «[[Статьи:Modern Hardware]]» переименована в «[[Статья:Modern Hardware]]» wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статьи|Modern_Hardware]] 4adfa0bfaa5767734e470f6cca9f620fa6a69034 78 76 2008-05-14T14:29:41Z OlegA 1 wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статья|Modern_Hardware]] c0dbdd45321d6bc8412c44fb0f5c47316c2a8570 MediaWiki:SideBar 8 25 63 2008-05-06T13:27:41Z OlegA 1 Новая: * navigation ** mainpage ** Special:Recentchanges|Recent changes ** Special:Sandbox|Sandbox ** Help:Help|Help wikitext text/x-wiki * navigation ** mainpage ** Special:Recentchanges|Recent changes ** Special:Sandbox|Sandbox ** Help:Help|Help d7ee4110cc6047989e8a08da5b795ecbb2832142 64 63 2008-05-06T13:28:34Z OlegA 1 Полностью удалено содержимое страницы wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 Категория:Справка 14 27 72 2008-05-08T20:23:48Z OlegA 1 Новая: <nowiki></nowiki> wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 94 72 2008-05-16T12:10:31Z OlegA 1 wikitext text/x-wiki [[ro:Ajutor:ajutor]] 4f5212a972c6c695929cc17e585faf83605addb4 95 94 2008-05-16T12:13:19Z OlegA 1 wikitext text/x-wiki [[ro:Ajutor_Ajutor]] 4efea54f1296d681e390e04d55d6978218e6e2c0 Справка:Справка 12 28 73 2008-05-08T20:25:54Z OlegA 1 Перенаправление на [[Категория:Справка]] wikitext text/x-wiki #REDIRECT [[:Category:Справка]] 7a80e3a1032d324f83c9cd9084ac426ee28d1d40 Категория:Установка Fedora Core 14 32 82 2008-05-14T14:51:25Z OlegA 1 Новая: [[Category:Установка_и_настройка|Установка Fedora Core]] wikitext text/x-wiki [[Category:Установка_и_настройка|Установка Fedora Core]] d8451561a540e5f192266757a69a541a4f44e8c2 Категория:Установка и настройка 14 33 83 2008-05-14T14:51:35Z OlegA 1 Новая: <nowiki></nowiki> wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 Установка по сети 0 34 84 2008-05-14T14:53:57Z OlegA 1 Новая: == Установка по сети == Этот материал рассматривает вопрос устанвки Fedora Core 6 с сетевого сервера на рабоч... wikitext text/x-wiki == Установка по сети == Этот материал рассматривает вопрос устанвки Fedora Core 6 с сетевого сервера на рабочую станцию поддерживающую PXE. == Подготовка == Внимание:: команды предваряемые символом '#' должны выполняться с правами root (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду {{{$ su - }}} для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя. Для начала определимся с требованиями: * сервер в локальной сети с HTTP, DHCP/BOOTP и TFTP сервисами. На самом деле эти сервисы могут быть запущены на разных машинах, но в рассматриваемом примере мы имеем один сервер работающий под управлением Fedora Core 6. * клиентская машина с сетевой картой поддерживающей PXE. В роли последней проще всего воспользоваться системой с интегрированным в мат. плату сетевым контроллером. Они дешевы, требуют минимум настроек, нет нужды искать bootrom, прошивать их. Испытывал три разные системы с интегрированой сетью: мат. плата Epox на чипсете nForce 3 250Gb (Award BIOS) == Установка == == Обновление == [[Category:Установка Fedora Core|Установка по сети]] ff77694edd86e225071f4f3f9eea2292d5fbc157 Первоначальная настройка 0 35 86 2008-05-14T14:57:15Z OlegA 1 Новая: == Документация == Если вы новый пользователь Linux, то затратьте некоторое время и ознакомьтесь с основа... wikitext text/x-wiki == Документация == Если вы новый пользователь Linux, то затратьте некоторое время и ознакомьтесь с основами системы. В Рунете доступны довольно обширные архивы документации, в частности * [http://www.linux.org.ru/books/ Linux.org.ru - Документация] * [http://www.linux.org.ru/books/lig/Lig.html Инсталляция Linux и первые шаги] - Старый и очень хороший материал. * [http://www.linux.org.ru/books/ru-linux-faq/rulinux.faq.html RU.LINUX FAQ] - сборник популярных вопросов-ответов. * [http://www.linux.org.ru/books/lor-faq/faq.html Linux.org.ru FAQ] - Более свежий и полный материал. * [http://www.opennet.ru/docs/ Документация на проекте OpenNET] * [http://www.linuxrsp.ru/index.html Проект LinuxRSP] * [http://www.linuxrsp.ru/docs/index.html Документация] * [http://www.linuxrsp.ru/win-lin-soft/ Аналоги Windows-программ в Linux - таблица соответствий] - уникальный в своем роде материал. Пользователь Fedora также найдет ряд ответов специфичных для дистрибутива: * [http://www.fedorafaq.org/ FedoraFAQ] * [http://www.linuxshare.ru/docs/distro/fedora/FedoraFAQ.html Специальный FAQ по дистрибутиву Linux Fedora Core] == Подключение к интернету == Linux это сетевая операционная система. Она очень хорошо работает на отдельно стоящей системе, но полностью раскрывает все свои возможности при работе в сетях, от малых до глобальных (Интернет). Поэтому если у вас есть возможность подключения к сетям - воспользуйтесь ею. == Настройка rpm == При запросе списка установленных пакетов иногда необходимо знать под какую архитектуру собран пакет. Для этого из под root редактируем файл /etc/rpm/macros (или файл ~/.rpmmacros в домашнем каталоге пользователя) и добавляем строчку: {{{ %_query_all_fmt ~%{name}-%{version}-%{release}.%{arch} }}} == Настройка yum == == Обновление == [[Category:Установка Fedora Core|Первоначальная настройка]] f0c7210f4a59bc43f27a42ee0d29b13c845ad445 Категория:Справка 14 27 96 95 2008-05-16T12:13:42Z OlegA 1 wikitext text/x-wiki [[ro:Ajutor:Ajutor]] 16dc5816b334d7e52bc1e9ac85dcbb9e4208cdb2 97 96 2008-05-16T12:20:37Z OlegA 1 wikitext text/x-wiki [[ro:Ajutor]] ed4a9c52106522bb17edfd5990b321835deb6489 105 97 2008-05-16T12:46:56Z OlegA 1 wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 Категория:Ajutor 14 42 101 2008-05-16T12:23:53Z OlegA 1 Новая: <nowiki></nowiki> wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 Ajutor:Ajutor 0 43 102 2008-05-16T12:24:25Z OlegA 1 Перенаправление на [[Категория:Ajutor]] wikitext text/x-wiki #REDIRECT [[:Category:Ajutor]] 1339794ee805d9154c24f9440050304fdc4e5a71 Ajutor:Cum să modifici o pagină 0 44 103 2008-05-16T12:28:40Z OlegA 1 Новая: ==Editare== * [[Help:Editing pages/ro|Editarea paginilor]] * [[Help:Starting a new page/ro|Crearea unei pagini noi]] * [[Help:Formatting/ro|Formatare]] * [[Help:Links/ro|Linkuri]] * [[He... wikitext text/x-wiki ==Editare== * [[Help:Editing pages/ro|Editarea paginilor]] * [[Help:Starting a new page/ro|Crearea unei pagini noi]] * [[Help:Formatting/ro|Formatare]] * [[Help:Links/ro|Linkuri]] * [[Help:User page/ro|Paginile utilizatorilor]] * [[Help:Talk pages/ro|Paginile de discuţii]] * [[Help:Categories/ro|Categorii]] ==Editare avansată== * [[Help:Images/ro|Imagini]] * [[Help:Tables/ro|Tabele]] * [[Help:Templates/ro|Templaturi-aspect]] * [[Help:Variables/ro|Variabile]] * [[Help:Managing files/ro|Gestionarea fişierelor]] ==Personalizare== * [[Help:Preferences/ro|Preferinţe]] * [[Help:Skins/ro|Skinuri]] ==Administrare== * [[Help:Interwiki linking/ro|Linkuri Interwiki]] * [[Help:Managing user rights/ro|Gestionarea drepturilor utilizatorilor]] * [[Help:Namespaces/ro|Namespaceuri]] * [[Help:Copying/ro|Copierea paginilor de 'Asistenţă']] 4fb2ea89a2fad9c01903cc8a3a521a26899aa883 104 103 2008-05-16T12:29:20Z OlegA 1 wikitext text/x-wiki ==Editare== * [[Help:Editing pages/ro|Editarea paginilor]] * [[Help:Starting a new page/ro|Crearea unei pagini noi]] * [[Help:Formatting/ro|Formatare]] * [[Help:Links/ro|Linkuri]] * [[Help:User page/ro|Paginile utilizatorilor]] * [[Help:Talk pages/ro|Paginile de discuţii]] * [[Help:Categories/ro|Categorii]] ==Editare avansată== * [[Help:Images/ro|Imagini]] * [[Help:Tables/ro|Tabele]] * [[Help:Templates/ro|Templaturi-aspect]] * [[Help:Variables/ro|Variabile]] * [[Help:Managing files/ro|Gestionarea fişierelor]] ==Personalizare== * [[Help:Preferences/ro|Preferinţe]] * [[Help:Skins/ro|Skinuri]] ==Administrare== * [[Help:Interwiki linking/ro|Linkuri Interwiki]] * [[Help:Managing user rights/ro|Gestionarea drepturilor utilizatorilor]] * [[Help:Namespaces/ro|Namespaceuri]] * [[Help:Copying/ro|Copierea paginilor de 'Asistenţă']] [[Category:Ajutor|Cum să modifici o pagină]] cc03beaeeb349441eb7634734ece57c335ec4b73 106 104 2008-05-16T12:56:19Z OlegA 1 wikitext text/x-wiki ==Editare== * [[mw:Help:Editarea paginilor|Editarea paginilor]] * [[mw:Help:Starting a new page/ro|Crearea unei pagini noi]] * [[mw:Help:Formatting/ro|Formatare]] * [[mw:Help:Links/ro|Linkuri]] * [[mw:Help:User page/ro|Paginile utilizatorilor]] * [[mw:Help:Talk pages/ro|Paginile de discuţii]] * [[mw:Help:Categories/ro|Categorii]] ==Editare avansată== * [[mw:Help:Images/ro|Imagini]] * [[mw:Help:Tables/ro|Tabele]] * [[mw:Help:Templates/ro|Templaturi-aspect]] * [[mw:Help:Variables/ro|Variabile]] * [[mw:Help:Managing files/ro|Gestionarea fişierelor]] ==Personalizare== * [[mw:Help:Preferences/ro|Preferinţe]] * [[mw:Help:Skins/ro|Skinuri]] ==Administrare== * [[mw:Help:Interwiki linking/ro|Linkuri Interwiki]] * [[mw:Help:Namespaces/ro|Namespaceuri]] * [[mw:Help:Copying/ro|Copierea paginilor de 'Asistenţă']] [[Category:Ajutor|Cum să modifici o pagină]] 9a449a6a5343f6337063030b63000f1ad1a5cf0e Справка:Справка по редактированию 12 18 107 92 2008-05-16T13:00:41Z OlegA 1 wikitext text/x-wiki == Редактирование == * [[mw:Help:Editing pages/ru|Редактирование страниц]] * [[mw:Help:Starting a new page/ru|Создание новой страницы]] * [[mw:Help:Formatting/ru|Форматирование]] * [[mw:Help:Links/ru|Ссылки]] === Расширенное редактирование === * [[mw:Help:Images/ru|Изображения]] * [[mw:Help:Tables/ru|Таблицы]] * [[mw:Help:Managing files/ru|Управление файлами]] * [[mw:Help:Moving a page/ru|Перемещение (переименование) страниц]] * [[mw:Help:Redirects/ru|Перенаправления]] * [[mw:Help:Deleting a page/ru|Удаление страниц]] * [[mw:Help:Variables/ru|Переменные]] * [[mw:Help:Namespaces/ru|Пространства имён]] * [[mw:Help:Interwiki linking/ru|Интервики-ссылки]] [[Category:Справка|Справка по редактированию]] f972107e7f502ceb323cb9e402d96e53aa7701ab Первоначальная настройка 0 35 108 86 2008-05-17T07:16:34Z OlegA 1 «[[Установка Fedora Core:Первоначальная настройка]]» переименована в «[[Первоначальная настройка]]» wikitext text/x-wiki == Документация == Если вы новый пользователь Linux, то затратьте некоторое время и ознакомьтесь с основами системы. В Рунете доступны довольно обширные архивы документации, в частности * [http://www.linux.org.ru/books/ Linux.org.ru - Документация] * [http://www.linux.org.ru/books/lig/Lig.html Инсталляция Linux и первые шаги] - Старый и очень хороший материал. * [http://www.linux.org.ru/books/ru-linux-faq/rulinux.faq.html RU.LINUX FAQ] - сборник популярных вопросов-ответов. * [http://www.linux.org.ru/books/lor-faq/faq.html Linux.org.ru FAQ] - Более свежий и полный материал. * [http://www.opennet.ru/docs/ Документация на проекте OpenNET] * [http://www.linuxrsp.ru/index.html Проект LinuxRSP] * [http://www.linuxrsp.ru/docs/index.html Документация] * [http://www.linuxrsp.ru/win-lin-soft/ Аналоги Windows-программ в Linux - таблица соответствий] - уникальный в своем роде материал. Пользователь Fedora также найдет ряд ответов специфичных для дистрибутива: * [http://www.fedorafaq.org/ FedoraFAQ] * [http://www.linuxshare.ru/docs/distro/fedora/FedoraFAQ.html Специальный FAQ по дистрибутиву Linux Fedora Core] == Подключение к интернету == Linux это сетевая операционная система. Она очень хорошо работает на отдельно стоящей системе, но полностью раскрывает все свои возможности при работе в сетях, от малых до глобальных (Интернет). Поэтому если у вас есть возможность подключения к сетям - воспользуйтесь ею. == Настройка rpm == При запросе списка установленных пакетов иногда необходимо знать под какую архитектуру собран пакет. Для этого из под root редактируем файл /etc/rpm/macros (или файл ~/.rpmmacros в домашнем каталоге пользователя) и добавляем строчку: {{{ %_query_all_fmt ~%{name}-%{version}-%{release}.%{arch} }}} == Настройка yum == == Обновление == [[Category:Установка Fedora Core|Первоначальная настройка]] f0c7210f4a59bc43f27a42ee0d29b13c845ad445 110 108 2008-05-17T07:17:34Z OlegA 1 wikitext text/x-wiki == Документация == Если вы новый пользователь Linux, то затратьте некоторое время и ознакомьтесь с основами системы. В Рунете доступны довольно обширные архивы документации, в частности * [http://www.linux.org.ru/books/ Linux.org.ru - Документация] * [http://www.linux.org.ru/books/lig/Lig.html Инсталляция Linux и первые шаги] - Старый и очень хороший материал. * [http://www.linux.org.ru/books/ru-linux-faq/rulinux.faq.html RU.LINUX FAQ] - сборник популярных вопросов-ответов. * [http://www.linux.org.ru/books/lor-faq/faq.html Linux.org.ru FAQ] - Более свежий и полный материал. * [http://www.opennet.ru/docs/ Документация на проекте OpenNET] * [http://www.linuxrsp.ru/index.html Проект LinuxRSP] * [http://www.linuxrsp.ru/docs/index.html Документация] * [http://www.linuxrsp.ru/win-lin-soft/ Аналоги Windows-программ в Linux - таблица соответствий] - уникальный в своем роде материал. Пользователь Fedora также найдет ряд ответов специфичных для дистрибутива: * [http://www.fedorafaq.org/ FedoraFAQ] * [http://www.linuxshare.ru/docs/distro/fedora/FedoraFAQ.html Специальный FAQ по дистрибутиву Linux Fedora Core] == Подключение к интернету == Linux это сетевая операционная система. Она очень хорошо работает на отдельно стоящей системе, но полностью раскрывает все свои возможности при работе в сетях, от малых до глобальных (Интернет). Поэтому если у вас есть возможность подключения к сетям - воспользуйтесь ею. == Настройка rpm == При запросе списка установленных пакетов иногда необходимо знать под какую архитектуру собран пакет. Для этого из под root редактируем файл /etc/rpm/macros (или файл ~/.rpmmacros в домашнем каталоге пользователя) и добавляем строчку: {{{ %_query_all_fmt ~%{name}-%{version}-%{release}.%{arch} }}} == Настройка yum == == Обновление == [[Category:Установка Fedora Core]] [[Category:Установка и настройка]] 8c52913955bbd34ef0354387052d99df8a3f8289 117 110 2008-05-17T07:34:33Z OlegA 1 wikitext text/x-wiki == Документация == Если вы новый пользователь Linux, то затратьте некоторое время и ознакомьтесь с основами системы. В Рунете доступны довольно обширные архивы документации, в частности * [http://www.linux.org.ru/books/ Linux.org.ru - Документация] * [http://www.linux.org.ru/books/lig/Lig.html Инсталляция Linux и первые шаги] - Старый и очень хороший материал. * [http://www.linux.org.ru/books/ru-linux-faq/rulinux.faq.html RU.LINUX FAQ] - сборник популярных вопросов-ответов. * [http://www.linux.org.ru/books/lor-faq/faq.html Linux.org.ru FAQ] - Более свежий и полный материал. * [http://www.opennet.ru/docs/ Документация на проекте OpenNET] * [http://www.linuxrsp.ru/index.html Проект LinuxRSP] * [http://www.linuxrsp.ru/docs/index.html Документация] * [http://www.linuxrsp.ru/win-lin-soft/ Аналоги Windows-программ в Linux - таблица соответствий] - уникальный в своем роде материал. Пользователь Fedora также найдет ряд ответов специфичных для дистрибутива: * [http://www.fedorafaq.org/ FedoraFAQ] * [http://www.linuxshare.ru/docs/distro/fedora/FedoraFAQ.html Специальный FAQ по дистрибутиву Linux Fedora Core] == Подключение к интернету == Linux это сетевая операционная система. Она очень хорошо работает на отдельно стоящей системе, но полностью раскрывает все свои возможности при работе в сетях, от малых до глобальных (Интернет). Поэтому если у вас есть возможность подключения к сетям - воспользуйтесь ею. == Настройка rpm == При запросе списка установленных пакетов иногда необходимо знать под какую архитектуру собран пакет. Для этого из под root редактируем файл <code>/etc/rpm/macros</code> (или файл <code>~/.rpmmacros</code> в домашнем каталоге пользователя) и добавляем строчку: <pre> %_query_all_fmt ~%{name}-%{version}-%{release}.%{arch} </pre> == Настройка yum == == Обновление == [[Category:Установка Fedora Core]] [[Category:Установка и настройка]] 3f120dcc6ccb6bc5526b342735f09e280ddbc0d3 118 117 2008-05-17T07:47:43Z OlegA 1 wikitext text/x-wiki == Документация == Если вы новый пользователь Linux, то затратьте некоторое время и ознакомьтесь с основами системы. В Рунете доступны довольно обширные архивы документации, в частности * [http://www.linux.org.ru/books/ Linux.org.ru - Документация] * [http://www.linux.org.ru/books/lig/Lig.html Инсталляция Linux и первые шаги] - Старый и очень хороший материал. * [http://www.linux.org.ru/books/ru-linux-faq/rulinux.faq.html RU.LINUX FAQ] - сборник популярных вопросов-ответов. * [http://www.linux.org.ru/books/lor-faq/faq.html Linux.org.ru FAQ] - Более свежий и полный материал. * [http://www.opennet.ru/docs/ Документация на проекте OpenNET] * [http://www.linuxrsp.ru/index.html Проект LinuxRSP] * [http://www.linuxrsp.ru/docs/index.html Документация] * [http://www.linuxrsp.ru/win-lin-soft/ Аналоги Windows-программ в Linux - таблица соответствий] - уникальный в своем роде материал. Пользователь Fedora также найдет ряд ответов специфичных для дистрибутива: * [http://www.fedorafaq.org/ FedoraFAQ] * [http://www.linuxshare.ru/docs/distro/fedora/FedoraFAQ.html Специальный FAQ по дистрибутиву Linux Fedora Core] == Подключение к интернету == Linux это сетевая операционная система. Она очень хорошо работает на отдельно стоящей системе, но полностью раскрывает все свои возможности при работе в сетях, от малых до глобальных (Интернет). Поэтому если у вас есть возможность подключения к сетям - воспользуйтесь ею. == Настройка rpm == При запросе списка установленных пакетов иногда необходимо знать под какую архитектуру собран пакет. Для этого из под root редактируем файл <code>/etc/rpm/macros</code> (или файл <code>~/.rpmmacros</code> в домашнем каталоге пользователя) и добавляем строчку: <source lang="spec"> %_query_all_fmt ~%{name}-%{version}-%{release}.%{arch} </source> == Настройка yum == == Обновление == [[Category:Установка Fedora Core]] [[Category:Установка и настройка]] a6f7909296624e7558a592400ae7a7245739471d Установка по сети 0 34 111 84 2008-05-17T07:19:49Z OlegA 1 «[[Установка Fedora Core:Установка по сети]]» переименована в «[[Установка по сети]]» wikitext text/x-wiki == Установка по сети == Этот материал рассматривает вопрос устанвки Fedora Core 6 с сетевого сервера на рабочую станцию поддерживающую PXE. == Подготовка == Внимание:: команды предваряемые символом '#' должны выполняться с правами root (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду {{{$ su - }}} для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя. Для начала определимся с требованиями: * сервер в локальной сети с HTTP, DHCP/BOOTP и TFTP сервисами. На самом деле эти сервисы могут быть запущены на разных машинах, но в рассматриваемом примере мы имеем один сервер работающий под управлением Fedora Core 6. * клиентская машина с сетевой картой поддерживающей PXE. В роли последней проще всего воспользоваться системой с интегрированным в мат. плату сетевым контроллером. Они дешевы, требуют минимум настроек, нет нужды искать bootrom, прошивать их. Испытывал три разные системы с интегрированой сетью: мат. плата Epox на чипсете nForce 3 250Gb (Award BIOS) == Установка == == Обновление == [[Category:Установка Fedora Core|Установка по сети]] ff77694edd86e225071f4f3f9eea2292d5fbc157 113 111 2008-05-17T07:20:26Z OlegA 1 wikitext text/x-wiki == Установка по сети == Этот материал рассматривает вопрос устанвки Fedora Core 6 с сетевого сервера на рабочую станцию поддерживающую PXE. == Подготовка == Внимание:: команды предваряемые символом '#' должны выполняться с правами root (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду {{{$ su - }}} для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя. Для начала определимся с требованиями: * сервер в локальной сети с HTTP, DHCP/BOOTP и TFTP сервисами. На самом деле эти сервисы могут быть запущены на разных машинах, но в рассматриваемом примере мы имеем один сервер работающий под управлением Fedora Core 6. * клиентская машина с сетевой картой поддерживающей PXE. В роли последней проще всего воспользоваться системой с интегрированным в мат. плату сетевым контроллером. Они дешевы, требуют минимум настроек, нет нужды искать bootrom, прошивать их. Испытывал три разные системы с интегрированой сетью: мат. плата Epox на чипсете nForce 3 250Gb (Award BIOS) == Установка == == Обновление == [[Category:Установка Fedora Core]] [[Category:Установка и настройка]] 3e0a6eb0eafc248cc02799b602e0140a542f0fc2 116 113 2008-05-17T07:32:44Z OlegA 1 wikitext text/x-wiki == Установка по сети == Этот материал рассматривает вопрос устанвки Fedora Core 6 с сетевого сервера на рабочую станцию поддерживающую PXE. == Подготовка == {{Суперпользователь}} Для начала определимся с требованиями: * сервер в локальной сети с HTTP, DHCP/BOOTP и TFTP сервисами. На самом деле эти сервисы могут быть запущены на разных машинах, но в рассматриваемом примере мы имеем один сервер работающий под управлением Fedora Core 6. * клиентская машина с сетевой картой поддерживающей PXE. В роли последней проще всего воспользоваться системой с интегрированным в мат. плату сетевым контроллером. Они дешевы, требуют минимум настроек, нет нужды искать bootrom, прошивать их. Испытывал три разные системы с интегрированой сетью: мат. плата Epox на чипсете nForce 3 250Gb (Award BIOS) == Установка == == Обновление == [[Category:Установка Fedora Core]] [[Category:Установка и настройка]] 1448ea660636803a37d431627e1b6d2b8c06cdbc Категория:Настройка системы 14 47 114 2008-05-17T07:21:43Z OlegA 1 Новая: [[Category:Установка и настройка]] wikitext text/x-wiki [[Category:Установка и настройка]] 61e227d6053c6034ab14497c9898c363a0b986ed Шаблон:Суперпользователь 10 48 115 2008-05-17T07:31:40Z OlegA 1 Новая: <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> '''В... wikitext text/x-wiki <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> '''ВНИМАНИЕ:''' команды предваряемые символом '<code>#</code>' должны выполняться с правами root (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду <code>$ su -</code> для повышения уровня привелегий. Символы '<code>$</code>' и '<code>#</code>' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя. </div> <noinclude> Использовать данный шаблон: <nowiki>{{Суперпользователь}}</nowiki> </noinclude> ab7f2d07670ab174cb46d3795a4e45a0de67827f 121 115 2008-05-17T08:29:36Z OlegA 1 wikitext text/x-wiki <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> '''ВНИМАНИЕ:''' команды предваряемые символом '<code>#</code>' должны выполняться с правами '''root''' (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду <code>$ su -</code> для повышения уровня привелегий. Символы '<code>$</code>' и '<code>#</code>' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя. </div> <noinclude> Использовать данный шаблон: <nowiki>{{Суперпользователь}}</nowiki> </noinclude> fcb7f03e6af326c8b8894e9218f3b4be5f683bf9 137 121 2008-05-17T09:59:20Z OlegA 1 wikitext text/x-wiki <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> '''ВНИМАНИЕ:''' команды предваряемые символом '<code>#</code>' должны выполняться с правами '''root''' (Суперпользователь). Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду <code>$ su -</code> для повышения уровня привелегий. Символы '<code>$</code>' и '<code>#</code>' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя. </div> <noinclude> Использовать данный шаблон: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>}}</nowiki> </noinclude> 956385b1ddeb48a94db65b7c545128f8aeb1d80a Категория:Instalare şi configurare 14 49 119 2008-05-17T07:49:28Z OlegA 1 Новая: <nowiki></nowiki> wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 Шаблон:Superuser 10 50 120 2008-05-17T07:57:04Z OlegA 1 Новая: <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> '''At... wikitext text/x-wiki <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> '''Atenţie:''' comenzile precedate de caracterul '<code>#</code>' trebuie executate cu drepturile utilizatorului '''root''' (Superuser). Deschideţi emulator terminal (sau aflîndu-se în consolă) cu drepturi utilizatorului regular, introduceţi comanda <code>su -</code> spre a ridica nivelul de privilegii. Caracterele '<code>$</code>' şi '<code>#</code>' din începutul rîndului nu fac parte din comanda şi nu trebuie introduse. Alte comenzi pot fi executate cu drepturlie utilizatorului regular. </div> <noinclude> Used: <nowiki>{{Superuser}}</nowiki> </noinclude> b4a8bd20c56d9df50a036c7fe16b9cc404aa06bb 136 120 2008-05-17T09:58:35Z OlegA 1 wikitext text/x-wiki <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> '''Atenţie:''' comenzile precedate de caracterul '<code>#</code>' trebuie executate cu drepturile utilizatorului '''root''' (Superuser). Deschideţi emulator terminal (sau aflîndu-se în consolă) cu drepturi utilizatorului regular, introduceţi comanda <code>su -</code> spre a ridica nivelul de privilegii. Caracterele '<code>$</code>' şi '<code>#</code>' din începutul rîndului nu fac parte din comanda şi nu trebuie introduse. Alte comenzi pot fi executate cu drepturlie utilizatorului regular. </div> <noinclude> Used: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>}}</nowiki> </noinclude> 0e0825b3980ab104bbc0f4565778524d544e32ca Pagina principală 0 3 122 93 2008-05-17T08:34:23Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Bine aţi venit în lume Fedora Linux.''' Aici puteţi găsi întrebări fracvente şi soluţii, exemple de setări şi sfaturi aplicabile nu doar la [[Fedora Linux/ro|Fedora Linux]], dar şi la alte distribuţii Linux. De asemenea avem [[:Category:Articole|articole]], care vă vor ajuta să descoperiţi diversa lume a sistemelor Linux. Site-ul este bazat pe tehnologia [[wikipedia:ro:Wiki|Wiki]]. După înregistrare veţi putea schimba parametrii utilizator, a edita şi crea pagini. Funcţie utilă - [[Special:Search|căutare]]. Căutare se execută peste tot conţinutul site-ului. == Secţii == * [[:Category:Instalare şi configurare|Instalare şi configurare]] * [[Programe]] * [[FAQ/ro|FAQ]] * [[:Category:Articole|Articole]] * [[Referinţe]] [[ru:Заглавная_страница]] cbdb6ffec05a6f25ee8ad5d6e97b1f54f883d4f8 Instalare drivere UVC şi GSPCA pentru suport WebCam 0 51 123 2008-05-17T08:42:50Z OlegA 1 Новая: Pentru a utiliza o cameră Web (în continuare WebCam) în Linux, trebuie, în dependenţă de model, de instalat: == gspca == '''gspca''' - un driver pentru o [http://mxhaard.free.fr/s... wikitext text/x-wiki Pentru a utiliza o cameră Web (în continuare WebCam) în Linux, trebuie, în dependenţă de model, de instalat: == gspca == '''gspca''' - un driver pentru o [http://mxhaard.free.fr/spca5xx.html mulţime de modele]. El este disponibil din repozitoriul '''Livna'''. Deconectaţi WebCam. Apoi executaţi: <source lang="bash"> # yum install gspca </source> acum conectaţi WebCam, şi încercaţi să rulati o aplicatie cu suport la V4L (V4L2). == uvc-linux == '''uvc-linux''' - alt driver pentru [http://linux-uvc.berlios.de/#devices dispozitive compatibile] USB Video Class. Utilizatorilor Fedora 8 este destul doar de a înnoi kernel pînă la versiunea 2.6.24.2-7 sau mai nouă. Kernel'ul nou deja conţine toate modulele necesare. Pentru a compila driver'ul din surse vom avea nevoie de pachete: ''kernel-devel, gcc, glibc-devel, subversion'' <source lang="bash"> # yum install kernel-devel gcc glibc-devel subversion </source> Descarcam sursele driverului într'un director temporar: <source lang="bash"> # mkdir linux-uvc;cd linux-uvc; svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk </source> şi-l compilăm <source lang="bash"> # make -C trunk all install </source> Încărcăm modul kernel (driver) în memorie: <source lang="bash"> # modprobe uvcvideo </source> Dacă la ultima etapă au apărut mesaje de eroare, pentru o descriere mai detailată urmărim ieşirea comenzii <source lang="bash"> $ dmesg|tail </source> Testăm suport video în aplicaţie preferată (ex. Skype, Kopete, ..) Operaţiile de mai sus vor trebui repetate la fiecare înnoire versiune kernel. Pentru comoditate au fost organizate într'un script shell. Plasaţi următorul conţinut într'un fişier text: <source lang="bash"> #!/bin/bash # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 2>&1 exit 1 fi #check packages if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then echo "installing missing packages"; yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!" fi #create temp dir TEMP_DIR=/tmp/uvc-linux-$$ mkdir $TEMP_DIR && cd $TEMP_DIR && #get latest SVN source svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk && #install make -C trunk all install && echo "installed successfully" && #insert module modprobe uvcvideo #remove temp dir cd ../ rm -fr $TEMP_DIR </source> Îl rulăm cu drepturile utilizatorului '''root''': <source lang="bash"> # sh webcam_compile.sh </source> ---- Sursele: * [http://liquidat.wordpress.com/2007/12/07/howto-logitech-quickcam-pro-9000-with-fedora-8/ liquidat.wordpress.com] fec75ad5dfdfc7c6db2b3155ab1e0caba02fa195 124 123 2008-05-17T08:44:03Z OlegA 1 wikitext text/x-wiki Pentru a utiliza o cameră Web (în continuare WebCam) în Linux, trebuie, în dependenţă de model, de instalat: == gspca == '''gspca''' - un driver pentru o [http://mxhaard.free.fr/spca5xx.html mulţime de modele]. El este disponibil din repozitoriul '''Livna'''. Deconectaţi WebCam. Apoi executaţi: <source lang="bash"> # yum install gspca </source> acum conectaţi WebCam, şi încercaţi să rulati o aplicatie cu suport la V4L (V4L2). == uvc-linux == '''uvc-linux''' - alt driver pentru [http://linux-uvc.berlios.de/#devices dispozitive compatibile] USB Video Class. Utilizatorilor Fedora 8 este destul doar de a înnoi kernel pînă la versiunea 2.6.24.2-7 sau mai nouă. Kernel'ul nou deja conţine toate modulele necesare. Pentru a compila driver'ul din surse vom avea nevoie de pachete: ''kernel-devel, gcc, glibc-devel, subversion'' <source lang="bash"> # yum install kernel-devel gcc glibc-devel subversion </source> Descarcam sursele driverului într'un director temporar: <source lang="bash"> # mkdir linux-uvc;cd linux-uvc; svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk </source> şi-l compilăm <source lang="bash"> # make -C trunk all install </source> Încărcăm modul kernel (driver) în memorie: <source lang="bash"> # modprobe uvcvideo </source> Dacă la ultima etapă au apărut mesaje de eroare, pentru o descriere mai detailată urmărim ieşirea comenzii <source lang="bash"> $ dmesg|tail </source> Testăm suport video în aplicaţie preferată (ex. Skype, Kopete, ..) Operaţiile de mai sus vor trebui repetate la fiecare înnoire versiune kernel. Pentru comoditate au fost organizate într'un script shell. Plasaţi următorul conţinut într'un fişier text: <source lang="bash"> #!/bin/bash # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 2>&1 exit 1 fi #check packages if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then echo "installing missing packages"; yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!" fi #create temp dir TEMP_DIR=/tmp/uvc-linux-$$ mkdir $TEMP_DIR && cd $TEMP_DIR && #get latest SVN source svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk && #install make -C trunk all install && echo "installed successfully" && #insert module modprobe uvcvideo #remove temp dir cd ../ rm -fr $TEMP_DIR </source> Îl rulăm cu drepturile utilizatorului '''root''': <source lang="bash"> # sh webcam_compile.sh </source> ---- Sursele: * [http://liquidat.wordpress.com/2007/12/07/howto-logitech-quickcam-pro-9000-with-fedora-8/ liquidat.wordpress.com] [[Category:Instalare şi configurare]] [[ru:Установка UVC и GSPCA драйверов Web-камер]] 230d07e27caffda892d0edbe765881aeff694024 135 124 2008-05-17T09:55:37Z OlegA 1 /* uvc-linux */ wikitext text/x-wiki Pentru a utiliza o cameră Web (în continuare WebCam) în Linux, trebuie, în dependenţă de model, de instalat: == gspca == '''gspca''' - un driver pentru o [http://mxhaard.free.fr/spca5xx.html mulţime de modele]. El este disponibil din repozitoriul '''Livna'''. Deconectaţi WebCam. Apoi executaţi: <source lang="bash"> # yum install gspca </source> acum conectaţi WebCam, şi încercaţi să rulati o aplicatie cu suport la V4L (V4L2). == uvc-linux == '''uvc-linux''' - alt driver pentru [http://linux-uvc.berlios.de/#devices dispozitive compatibile] USB Video Class. {{Information|Utilizatorilor Fedora 8 este destul doar de a înnoi kernel pînă la versiunea 2.6.24.2-7 sau mai nouă. Kernel'ul nou deja conţine toate modulele necesare.}} Pentru a compila driver'ul din surse vom avea nevoie de pachete: ''kernel-devel, gcc, glibc-devel, subversion'' <source lang="bash"> # yum install kernel-devel gcc glibc-devel subversion </source> Descarcam sursele driverului într'un director temporar: <source lang="bash"> # mkdir linux-uvc;cd linux-uvc; svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk </source> şi-l compilăm <source lang="bash"> # make -C trunk all install </source> Încărcăm modul kernel (driver) în memorie: <source lang="bash"> # modprobe uvcvideo </source> Dacă la ultima etapă au apărut mesaje de eroare, pentru o descriere mai detailată urmărim ieşirea comenzii <source lang="bash"> $ dmesg|tail </source> Testăm suport video în aplicaţie preferată (ex. Skype, Kopete, ..) Operaţiile de mai sus vor trebui repetate la fiecare înnoire versiune kernel. Pentru comoditate au fost organizate într'un script shell. Plasaţi următorul conţinut într'un fişier text: <source lang="bash"> #!/bin/bash # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 2>&1 exit 1 fi #check packages if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then echo "installing missing packages"; yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!" fi #create temp dir TEMP_DIR=/tmp/uvc-linux-$$ mkdir $TEMP_DIR && cd $TEMP_DIR && #get latest SVN source svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk && #install make -C trunk all install && echo "installed successfully" && #insert module modprobe uvcvideo #remove temp dir cd ../ rm -fr $TEMP_DIR </source> Îl rulăm cu drepturile utilizatorului '''root''': <source lang="bash"> # sh webcam_compile.sh </source> ---- Sursele: * [http://liquidat.wordpress.com/2007/12/07/howto-logitech-quickcam-pro-9000-with-fedora-8/ liquidat.wordpress.com] [[Category:Instalare şi configurare]] [[ru:Установка UVC и GSPCA драйверов Web-камер]] 6baf7b466c28b7d8d9c24811d36a5bc8a6e371d8 139 135 2008-05-18T18:04:35Z OlegA 1 wikitext text/x-wiki {{Superuser}} Pentru a utiliza o cameră Web (în continuare WebCam) în Linux, trebuie, în dependenţă de model, de instalat: == gspca == '''gspca''' - un driver pentru o [http://mxhaard.free.fr/spca5xx.html mulţime de modele]. El este disponibil din repozitoriul '''Livna'''. Deconectaţi WebCam. Apoi executaţi: <source lang="bash"> # yum install gspca </source> acum conectaţi WebCam, şi încercaţi să rulati o aplicatie cu suport la V4L (V4L2). == uvc-linux == '''uvc-linux''' - alt driver pentru [http://linux-uvc.berlios.de/#devices dispozitive compatibile] USB Video Class. {{Information|Utilizatorilor Fedora 8 este destul doar de a înnoi kernel pînă la versiunea 2.6.24.2-7 sau mai nouă. Kernel'ul nou deja conţine toate modulele necesare.}} Pentru a compila driver'ul din surse vom avea nevoie de pachete: ''kernel-devel, gcc, glibc-devel, subversion'' <source lang="bash"> # yum install kernel-devel gcc glibc-devel subversion </source> Descarcam sursele driverului într'un director temporar: <source lang="bash"> # mkdir linux-uvc;cd linux-uvc; svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk </source> şi-l compilăm <source lang="bash"> # make -C trunk all install </source> Încărcăm modul kernel (driver) în memorie: <source lang="bash"> # modprobe uvcvideo </source> Dacă la ultima etapă au apărut mesaje de eroare, pentru o descriere mai detailată urmărim ieşirea comenzii <source lang="bash"> $ dmesg|tail </source> Testăm suport video în aplicaţie preferată (ex. Skype, Kopete, ..) Operaţiile de mai sus vor trebui repetate la fiecare înnoire versiune kernel. Pentru comoditate au fost organizate într'un script shell. Plasaţi următorul conţinut într'un fişier text: <source lang="bash"> #!/bin/bash # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 2>&1 exit 1 fi #check packages if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then echo "installing missing packages"; yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!" fi #create temp dir TEMP_DIR=/tmp/uvc-linux-$$ mkdir $TEMP_DIR && cd $TEMP_DIR && #get latest SVN source svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk && #install make -C trunk all install && echo "installed successfully" && #insert module modprobe uvcvideo #remove temp dir cd ../ rm -fr $TEMP_DIR </source> Îl rulăm cu drepturile utilizatorului '''root''': <source lang="bash"> # sh webcam_compile.sh </source> ---- Sursele: * [http://liquidat.wordpress.com/2007/12/07/howto-logitech-quickcam-pro-9000-with-fedora-8/ liquidat.wordpress.com] [[Category:Instalare şi configurare]] [[ru:Установка UVC и GSPCA драйверов Web-камер]] 28799b733f2f3176b552349a25cbe5606877d441 Установка UVC и GSPCA драйверов Web-камер 0 52 125 2008-05-17T09:04:47Z OlegA 1 Новая: {{Суперпользователь}} В зависимости от модели web-камеры, существует несколько способов заставить её р... wikitext text/x-wiki {{Суперпользователь}} В зависимости от модели web-камеры, существует несколько способов заставить её работать под linux. == gspca == '''gspca''' - это драйвер для более, чем 240 моделей камер. Полный список поддерживаемых моделей можно найти [http://mxhaard.free.fr/spca5xx.html здесь]. Для установки необходим репозиторий '''Livna'''. Отключите камеру, затем установите следующий пакет и зависимости, которые он запросит: <source lang="bash"> # yum install gspca </source> теперь подключите web-камеру, и проверьте её работоспособность в каком-либо приложении. == uvc-linux == если для вашей камеры нет поддержки '''gspca''' - возможно, она есть в разрабатываемом в данный момент USB Video Class для Linux. Для начала - можно просмотреть [http://linux-uvc.berlios.de/#devices список известных устройств], однако и другие камеры, соответствующие спецификации UVC должны работать. Так что приступим к установке! Пользователям Fedora 8 достаточно обновится до ядра 2.6.24.2-7 и выше. Новые ядра содержат все необходимые модули. Здесь всё сложнее, так как не существует готовых пакетов. Для начала, заходим под суперпользователем, т.к. скрипт установки зависит от переменной PATH <source lang="bash"> $ su - </source> нам понадобится несколько пакетов - поэтому установим их <source lang="bash"> # yum install kernel-devel gcc glibc-devel subversion </source> теперь - создаём временную директорию, и качаем в неё последнюю SVN версию драйвера <source lang="bash"> # mkdir linux-uvc && cd linux-uvc && svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk </source> собираем, и устанавливаем модуль ядра <source lang="bash"> # make -C trunk all install </source> на всякий случай, после установки, внедряем установленный модуль <source lang="bash"> # modprobe uvcvideo </source> Готово. Теперь можно проверить на каком-то приложении, поддерживающем v4l2 (Skype, Kopete,...) Ввиду того, что вышеприведённые действия нужно делать после каждого обновления ядра, можно пользоваться небольшим скриптом, автоматизирующим процесс: <source lang="bash"> #!/bin/bash # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 2>&1 exit 1 fi #check packages if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then echo "installing missing packages"; yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!" fi #create temp dir TEMP_DIR=/tmp/uvc-linux-$$ mkdir $TEMP_DIR && cd $TEMP_DIR && #get latest SVN source svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk && #install make -C trunk all install && echo "installed successfully" && #insert module modprobe uvcvideo #remove temp dir cd ../ rm -fr $TEMP_DIR </source> ---- Источники: * [http://liquidat.wordpress.com/2007/12/07/howto-logitech-quickcam-pro-9000-with-fedora-8/ liquidat.wordpress.com] * [http://linux-uvc.berlios.de/ linux-uvc.berlios.de] * [http://mxhaard.free.fr/ mxhaard.free.fr] [[ro:Instalare drivere UVC şi GSPCA pentru suport WebCam]] [[Category:Установка и настройка]] [[Category:Драйвера]] 0775be87a54d78691fbe2a31c9477057bb3750e2 134 125 2008-05-17T09:53:43Z OlegA 1 /* uvc-linux */ wikitext text/x-wiki {{Суперпользователь}} В зависимости от модели web-камеры, существует несколько способов заставить её работать под linux. == gspca == '''gspca''' - это драйвер для более, чем 240 моделей камер. Полный список поддерживаемых моделей можно найти [http://mxhaard.free.fr/spca5xx.html здесь]. Для установки необходим репозиторий '''Livna'''. Отключите камеру, затем установите следующий пакет и зависимости, которые он запросит: <source lang="bash"> # yum install gspca </source> теперь подключите web-камеру, и проверьте её работоспособность в каком-либо приложении. == uvc-linux == если для вашей камеры нет поддержки '''gspca''' - возможно, она есть в разрабатываемом в данный момент USB Video Class для Linux. Для начала - можно просмотреть [http://linux-uvc.berlios.de/#devices список известных устройств], однако и другие камеры, соответствующие спецификации UVC должны работать. Так что приступим к установке! {{Information|Пользователям Fedora 8 достаточно обновится до ядра 2.6.24.2-7 и выше. Новые ядра содержат все необходимые модули.}} Здесь всё сложнее, так как не существует готовых пакетов. Для начала, заходим под суперпользователем, т.к. скрипт установки зависит от переменной PATH <source lang="bash"> $ su - </source> нам понадобится несколько пакетов - поэтому установим их <source lang="bash"> # yum install kernel-devel gcc glibc-devel subversion </source> теперь - создаём временную директорию, и качаем в неё последнюю SVN версию драйвера <source lang="bash"> # mkdir linux-uvc && cd linux-uvc && svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk </source> собираем, и устанавливаем модуль ядра <source lang="bash"> # make -C trunk all install </source> на всякий случай, после установки, внедряем установленный модуль <source lang="bash"> # modprobe uvcvideo </source> Готово. Теперь можно проверить на каком-то приложении, поддерживающем v4l2 (Skype, Kopete,...) Ввиду того, что вышеприведённые действия нужно делать после каждого обновления ядра, можно пользоваться небольшим скриптом, автоматизирующим процесс: <source lang="bash"> #!/bin/bash # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 2>&1 exit 1 fi #check packages if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then echo "installing missing packages"; yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!" fi #create temp dir TEMP_DIR=/tmp/uvc-linux-$$ mkdir $TEMP_DIR && cd $TEMP_DIR && #get latest SVN source svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk && #install make -C trunk all install && echo "installed successfully" && #insert module modprobe uvcvideo #remove temp dir cd ../ rm -fr $TEMP_DIR </source> ---- Источники: * [http://liquidat.wordpress.com/2007/12/07/howto-logitech-quickcam-pro-9000-with-fedora-8/ liquidat.wordpress.com] * [http://linux-uvc.berlios.de/ linux-uvc.berlios.de] * [http://mxhaard.free.fr/ mxhaard.free.fr] [[ro:Instalare drivere UVC şi GSPCA pentru suport WebCam]] [[Category:Установка и настройка]] [[Category:Драйвера]] c4d87eb869740511c58613aa7c9db67634cf4faf Файл:Information.png 6 54 127 2008-05-17T09:26:37Z OlegA 1 wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 Шаблон:Information 10 55 128 2008-05-17T09:44:01Z OlegA 1 Новая: <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> [[Ima... wikitext text/x-wiki <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> [[Image:Information.png|25px]] {{{1}}} </div> <noinclude> Использовать данный шаблон: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>}}</nowiki> </noinclude> 410ce492b29cb6d69c52f253cb8e6c0aacf009dc 129 128 2008-05-17T09:46:37Z OlegA 1 wikitext text/x-wiki <onlyinclude> <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> [[Image:Information.png|25px]] {{{1}}} </div> <onlyinclude> <noinclude> Использовать данный шаблон: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>}}</nowiki> </noinclude> 3cdb2807f0c63ad0b00d12eda9f6c4506d725255 130 129 2008-05-17T09:48:06Z OlegA 1 wikitext text/x-wiki <includeonly> <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> [[Image:Information.png|25px]] {{{1}}} </div> </includeonly> <noinclude> Использовать данный шаблон: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|Text}}</nowiki> </noinclude> 04c564b2335205918575b82f1cd4087b6b6a98ae 131 130 2008-05-17T09:50:18Z OlegA 1 wikitext text/x-wiki <includeonly> [[Image:Information.png|25px]] {{{1}}} </includeonly> <noinclude> Used: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|Text}}</nowiki> == Example: == [[Image:Information.png|25px]] '''Information!''' </noinclude> 46bf273740112b5e04f2d71c1be489462f600e6a 132 131 2008-05-17T09:52:30Z OlegA 1 wikitext text/x-wiki <includeonly>[[Image:Information.png|25px]] {{{1}}}</includeonly> <noinclude>Used: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|Text}}</nowiki> Example: [[Image:Information.png|25px]] '''Information!'''</noinclude> 8f030795c13eb73c1caf596d7506d2fb7065ba11 133 132 2008-05-17T09:53:26Z OlegA 1 wikitext text/x-wiki [[Image:Information.png|25px]] {{{1}}} <noinclude><br />Used: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|Text}}</nowiki></noinclude> 9379b2c875bb781f6a6a8b282b3438910fae9c90 Категория:Драйвера 14 56 138 2008-05-17T10:01:56Z OlegA 1 Новая: [[Category:Установка и настройка]] wikitext text/x-wiki [[Category:Установка и настройка]] 61e227d6053c6034ab14497c9898c363a0b986ed Установка поддержки проприетарных форматов мультимедиа 0 57 140 2008-05-18T18:13:07Z OlegA 1 Новая: {{Суперпользователь}} * [http://www.fedorafaq.org/#installsoftware FedoraFAQ] * [http://www.gagme.com/greg/linux/fc6-tips.php#mp3 Fedora Core 6 Tips and Tricks] == У... wikitext text/x-wiki {{Суперпользователь}} * [http://www.fedorafaq.org/#installsoftware FedoraFAQ] * [http://www.gagme.com/greg/linux/fc6-tips.php#mp3 Fedora Core 6 Tips and Tricks] == Установка поддержки проприетарных форматов мультимедиа == === Подготовка === Предварительно нужно настроить репозиорий yum. Для Fedora 7: <source lang="bash"> # rpm -ivh http://rpm.livna.org/livna-release-7.rpm </source> Для Fedora 8: <source lang="bash"> # rpm -ivh http://rpm.livna.org/livna-release-8.rpm </source> Для Fedora 9: <source lang="bash"> # rpm -ivh http://rpm.livna.org/livna-release-9.rpm </source> Если вы установили пакет fedoramd-release согласно инструкции, то этот шаг можно пропустить - наш репозиторий включает в себя копию livna. === Установка === * Для поддержки проприетарных форматов в приложениях использующих GStreamer. <source lang="bash"> # yum -y install libtunepimp-extras-nonfree gstreamer-ffmpeg gstreamer-plugins-ugly </source> * Для поддержки проприетарных форматов в audacity, audacious, xmms. <source lang="bash"> # yum -y install audacity-nonfree audacious-plugins-nonfree-aac \ audacious-plugins-nonfree-alac audacious-plugins-nonfree-mp3 \ audacious-plugins-nonfree-wma xmms xmms-mp3 xmms-faad2 </source> * Для поддержки проприетарных форматов в KDE приложениях <source lang="bash"> # yum -y install kdemultimedia-extras-nonfree k3b-extras-nonfree amarok-extras-nonfree akode-extras </source> * Проигрывание видео, DVD в xine. <source lang="bash"> # yum -y install xine xine-lib xine-lib-extras-nonfree libdvdcss </source> * Проигрывание видео, DVD в mplayer. <source lang="bash"> # yum -y install mplayer-gui mplayer-fonts mplayer </source> * Проигрывание видео, DVD в totem. <source lang="bash"> # echo -e "remove totem totem-plparser\n install totem-xine totem-xine-plparser libdvdcss libdvdnav\n run\n quit" | yum -y shell </source> 46020e199fb7d36919ae722d3d64e35d2c9af460 141 140 2008-05-18T18:14:09Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} * [http://www.fedorafaq.org/#installsoftware FedoraFAQ] * [http://www.gagme.com/greg/linux/fc6-tips.php#mp3 Fedora Core 6 Tips and Tricks] == Установка поддержки проприетарных форматов мультимедиа == === Подготовка === Предварительно нужно настроить репозиорий yum. Для Fedora 7: <source lang="bash"> # rpm -ivh http://rpm.livna.org/livna-release-7.rpm </source> Для Fedora 8: <source lang="bash"> # rpm -ivh http://rpm.livna.org/livna-release-8.rpm </source> Для Fedora 9: <source lang="bash"> # rpm -ivh http://rpm.livna.org/livna-release-9.rpm </source> Если вы установили пакет fedoramd-release согласно инструкции, то этот шаг можно пропустить - наш репозиторий включает в себя копию livna. === Установка === * Для поддержки проприетарных форматов в приложениях использующих GStreamer. <source lang="bash"> # yum -y install libtunepimp-extras-nonfree gstreamer-ffmpeg gstreamer-plugins-ugly </source> * Для поддержки проприетарных форматов в audacity, audacious, xmms. <source lang="bash"> # yum -y install audacity-nonfree audacious-plugins-nonfree-aac \ audacious-plugins-nonfree-alac audacious-plugins-nonfree-mp3 \ audacious-plugins-nonfree-wma xmms xmms-mp3 xmms-faad2 </source> * Для поддержки проприетарных форматов в KDE приложениях <source lang="bash"> # yum -y install kdemultimedia-extras-nonfree k3b-extras-nonfree amarok-extras-nonfree akode-extras </source> * Проигрывание видео, DVD в xine. <source lang="bash"> # yum -y install xine xine-lib xine-lib-extras-nonfree libdvdcss </source> * Проигрывание видео, DVD в mplayer. <source lang="bash"> # yum -y install mplayer-gui mplayer-fonts mplayer </source> * Проигрывание видео, DVD в totem. <source lang="bash"> # echo -e "remove totem totem-plparser\n install totem-xine totem-xine-plparser libdvdcss libdvdnav\n run\n quit" | yum -y shell </source> [[Category:Установка и настройка]] [[Category:Настройка системы]] 77cf8dae968507dbd6961acdee8fda0963d33322 Установка Adobe Flash Player 0 58 142 2008-05-18T18:17:47Z OlegA 1 Новая: {{Суперпользователь}} [http://macromedia.mplug.org/ Страница проекта] [http://blogs.adobe.com/penguin.swf/ Блог Adobe Flash Player 9 для Linux] ... wikitext text/x-wiki {{Суперпользователь}} [http://macromedia.mplug.org/ Страница проекта] [http://blogs.adobe.com/penguin.swf/ Блог Adobe Flash Player 9 для Linux] == Установка Adobe Flash Player == === Подготовка === Предварительно нужно настроить репозиорий yum. <source lang="bash"> # cd /etc/yum.repos.d/ # wget http://macromedia.rediris.es/macromedia-i386.repo </source> или скачать с [http://repo.fedoramd.org/3rdparty/ repo.fedoramd.org] === Установка === <source lang="bash"> # yum install flash-plugin </source> или если есть RPM <source lang="bash"> # rpm -Uvh flash-plugin-*.rpm </source> === Обновление === <source lang="bash"> # yum update flash-plugin </source> [[Category:Установка и настройка]] [[Category:Настройка системы]] 555a8c901b2b4e1be1986f5337a464e7a05dd945 Настройка драйвера для устройств BlueTooth 0 59 143 2008-05-18T18:45:45Z OlegA 1 Новая: {{Суперпользователь}} == Настройка == 1. Для корректной работы нам понадобятся пакеты: bluez-libs, bluez-utils, bluez-gn... wikitext text/x-wiki {{Суперпользователь}} == Настройка == 1. Для корректной работы нам понадобятся пакеты: bluez-libs, bluez-utils, bluez-gnome. <source lang="bash"> # yum install bluez-libs bluez-utils bluez-gnome </source> 2. Запустите bluetooth daemon: <source lang="bash"> # service bluetooth start </source> 3. Теперь пора проверить пару вещей: <source lang="bash"> # /usr/sbin/hciconfig -a hci0: Type: USB BD Address: 00:00:00:00:00:00 ACL MTU: 192:8 SCO MTU: 64:8 UP RUNNING PSCAN ISCAN RX bytes:331 acl:1 sco:0 events:46 errors:0 TX bytes:1412 acl:0 sco:0 commands:39 errors:0 Features: 0xff 0xff 0x0f 0x00 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: HOLD SNIFF PARK Link mode: SLAVE ACCEPT Name: 'BlueZ' Class: 0x000100 Service Classes: Unspecified Device Class: Computer, Uncategorized HCI Ver: 1.1 (0x1) HCI Rev: 0x1e7 LMP Ver: 1.1 (0x1) LMP Subver: 0x1e7 Manufacturer: Cambridge Silicon Radio (10) </source> 4. Проверим, нашелся ли наше устройство (телефон): <source lang="bash"> # hcitool scan Scanning ... 00:02:EE:A0:25:90 Nokia7650 </source> 5. Если телефон не найден, проверьте, включён ли bluetooth в его настройках. Посмотрим, какие услуги доступны через bluetooth: <source lang="bash"> # sdptool browse 00:02:EE:A0:25:90 </source> 6. Пропингуем: <source lang="bash"> # l2ping 00:02:EE:A0:25:90 </source> == Состыковка == Теперь нам нужно состыковать устройства. Есть два варианта: * запрос на соединение со стороны устройства (телефона) * запрос на соединение со стороны системы (linux) 1. Соединение со стороны устройства (телефона) 2. Находим пункт ''passkey'' в файле /etc/bluetooth/hcid.conf и редактируем passkey (указываем только цифры) 3. Перезапускаем bluetoothd <source lang="bash"> # service bluetooth restart </source> 4. Необходимо активировать видимость нашего bluetooth-хаба <source lang="bash"> # /usr/sbin/hciconfig hci0 piscan </source> 5. Запускаем поиск на нашем устройстве (телефоне). Телефон должен найти устройство и при подключении спросить passkey, указываем тот passkey, который ввели в hcid.conf 6. Подключение завершено. 7. Соединение со стороны системы (linux) 8. Необходимо включить в телефоне "Виден для всех" в опциях bluetooth 9. Запускаем <source lang="bash"> $ bluetooth-applet </source> даже, если Вы используете KDE 10. Посредством любого приложения, работающего с bluetooth найдите устройство и попробуйте подключится к нему. 11. Появиться окно с запросом passkey, введите код, а затем введите этот же код на устройстве (телефоне). 12. Подключение завершено. [[Category:Установка и настройка]] [[Category:Настройка системы]] cc596159f5ffcd263b252844dbac0c4c8d29153e Настройка мониторинга за датчиками температуры и вращения вентиляторов 0 60 144 2008-05-25T13:46:08Z OlegA 1 Новая: == Описание == '''lm_sensors''' - проект поддержки мониторинга оборудования (температура, вращение венти... wikitext text/x-wiki == Описание == '''lm_sensors''' - проект поддержки мониторинга оборудования (температура, вращение вентиляторов, напряжения питания). Мониторинг этот осуществляется средством обмена по шине SMB (System Management Bus). Кроме чипов мониторинга к этой шине могут быть подключены чипы EEPROM современных модулей памяти. Чипы мониторинга и датчики в настоящее время располагаются не только на M/B, но и на CPU и некоторых видеокартах. Насколько такой мониторинг нужен вообще - каждый обладатель персонального компьютера вправе решать сам, но, несомненно, что для серверов и технологических компьютеров это, практически, стандарт. В мире MS Windows мониторинг оборудования - почти исключительно инициатива производителей оборудования. Со всеми вытекающими отсюда последствиями: неудовлетворительное, подчас, качество ПО, отсутствие даже намёка на стандарт, усечённая функциональность. Коммерческие и свободные программы мониторинга довольно немногочисленны. Несколько иное положение сложилось в Linux. То, что мониторинг требует действий на уровне ядра - не хорошо и не плохо: это - реальность. То, что группа энтузиастов взялась реализовать единый подход к мониторингу, осуществляемому с помощью десятков различных датчиков и чипов - очень хорошо. А то, что в конечном счёте это стало "естественным" умением ядра - прекрасно. Согласитесь, что возможность получить данные мониторинга откуда-нибудь из /sys/proc... - лучшее, что можно было ожидать. Эти данные можно визуализировать в любой желаемой форме, протоколировать, включать в "цепочки" обратной связи и т.д. и т.п. Словом, идея - хороша. Осталось оценить реализацию, что я и предлагаю сделать всем, читающим эти строки. А чтобы эксперимент отнял по возможности меньше времени, прилагаю коротенькую инструкцию. Инструкция эта - отнюдь не попытка заменить или дополнить довольно качественную документацию проекта. Просто эта документация пока в большой степени ориентирована на операции с ядрами <2.5. Да и великовата, если мониторинг - не насущная потребность, а просто "интересно". == Настройка == По умолчанию lm_sensors уже установлен и даже запущен, но необходимо сделать настройки для получения результатов. 1. Запускаем: <source lang="bash"> # sensors-detect </source> и следуем инструкциям. Для тех кто плохо разбирается жмём всегда ENTER. 2. В конце перезаписывается файл <code>/etc/sysconfig/lm_sensors</code>. 3. Запускаем сервис: <source lang="bash"> # service lm_sensors start </source> 4. Запускаем в консоли: <source lang="bash"> $ sensors </source> и смотрим результат. [[Category:Установка и настройка]] [[Category:Настройка системы]] 283e565741d04c93a43958e14fbce78f2e5c7b86 Установка и настройка Apache PHP MySQL 0 61 145 2008-05-25T14:51:24Z OlegA 1 Новая: {{Суперпользователь}} == Apache == '''Apache HTTP-сервер''' (по-русски обычно произносят Апа&#769;чи или Апа&#769;ч) — эт... wikitext text/x-wiki {{Суперпользователь}} == Apache == '''Apache HTTP-сервер''' (по-русски обычно произносят Апа&#769;чи или Апа&#769;ч) — это веб-сервер, с открытым исходным кодом. С апреля 1996 это самый популярный HTTP-сервер в Интернете: в мае 1999 года он работал на 57 % веб-серверов, в августе 2004 на 67 %. Основными достоинствами Apache считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т. д. Поддерживает IPv6. Недостатком наиболее часто называется отсутствие удобного стандартного интерфейса для администратора. Сервер был написан в начале 1995 года и считается, что его имя восходит к шуточному названию «a patchy» (англ. заплаточный), так как он устранял ошибки популярного тогда сервера Всемирной паутины NCSA HTTPd 1.3. В дальнейшем, с версии 2.х сервер был переписан заново и теперь не содержит кода NCSA, но имя осталось. На данный момент разработка ведется в ветке 2.2, а в версиях 1.3 и 2.0 производятся лишь исправления ошибок безопасности. Веб-сервер Apache разрабатывается и поддерживается открытым сообществом разработчиков под эгидой Apache Software Foundation и включён во многие программные продукты, среди которых СУБД Oracle и IBM Web``Sphere. == PHP == '''PHP''' (англ. PHP: Hypertext Preprocessor — «PHP: Препроцессор Гипертекста») — скриптовый язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством представителей хостинга. Входит в LAMP — «стандартный» набор для создания вебсайтов (Linux, Apache, ~MySQL, PHP (Python или Perl)). В области программирования для Сети PHP — один из популярнейших скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP отличается наличием ядра и подключаемых модулей, «расширений»: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т. п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения. Кроме этого, он может использоваться для решения административных задач в операционных системах UNIX, Linux, Windows и Mac OS X. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript. Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl. Ныне PHP используется сотнями тысяч разработчиков. Несколько миллионов сайтов сообщают о работе с PHP, что составляет более пятой доли доменов Интернета. Группа разработчиков PHP состоит из множества людей, добровольно работающих над ядром и расширениями PHP, и смежными проектами, такими, как PEAR или документация языка. == MySQL == '''MySQL''' (произносится «Май Эс Кью Эль») — свободная система управления базами данных (СУБД). MySQL является собственностью компании MySQL AB, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. Помимо этого компания MySQL AB разрабатывает функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации. MySQL характеризуется большой скоростью, устойчивостью и лёгкостью в использовании, является решением для малых и средних приложений. Наряду с Oracle Database это одна из самых быстрых СУБД на сегодняшний день. Входит в LAMP. Распространение СУБД MySQL на основе GPL и высокая скорость обработки запросов привело к тому, что эта база данных стала стандартом де-факто в услугах сетевого хостинга. Обычно ~MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. Гибкость СУБД MySQL обеспечивается поддержкой большого типа таблиц: пользователи могут выбрать как сверхбыстрые таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и более медленные, но чрезвычайно устойчивые таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующем принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL лицензированию в СУБД MySQL постоянно появляются новые типы таблиц. == Установка и настройка == 1. Необходимо установить Apache (httpd), PHP, MySQL (сервер и клиент) и компоненты для сопряжения PHP c MySQL: <source lang="bash"> # yum -y install httpd php mysql mysql-server php-mysql </source> 2. Настраиваем сервисы, чтобы автоматически запускались при загрузке системы: <source lang="bash"> # /sbin/service httpd start # /sbin/service mysqld start </source> 3. '''ВНИМАНИЕ!''' Установите пароль на пользователя root в MySQL, иначе каждый может получить полный доступ к серверу БД. Рекомендуется установить пароль не похожий на пароль пользователя root в системе. <source lang="bash"> # mysqladmin -u root password 'new-password' </source> 4. Некоторые настройки безопасности в MySQL: <source lang="bash"> # mysql -u root -p mysql> DROP DATABASE test; mysql> DELETE FROM mysql.user WHERE user = ''; mysql> FLUSH PRIVILEGES; </source> 5. Домашняя страница для Apache находится в /var/www/html/. Создайте в ней файл phpinfo.php: <source lang="php"> <?php phpinfo(); ?> </source> 6. Откройте в браузере адрес: http://localhost/phpinfo.php, Вы должны увидеть полную информацию о Вашей ситеме. 7a41b9922098d151c58b9e3bf711be11d31b7c8f 146 145 2008-05-25T14:53:07Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Apache == '''Apache HTTP-сервер''' (по-русски обычно произносят Апа&#769;чи или Апа&#769;ч) — это веб-сервер, с открытым исходным кодом. С апреля 1996 это самый популярный HTTP-сервер в Интернете: в мае 1999 года он работал на 57 % веб-серверов, в августе 2004 на 67 %. Основными достоинствами Apache считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т. д. Поддерживает IPv6. Недостатком наиболее часто называется отсутствие удобного стандартного интерфейса для администратора. Сервер был написан в начале 1995 года и считается, что его имя восходит к шуточному названию «a patchy» (англ. заплаточный), так как он устранял ошибки популярного тогда сервера Всемирной паутины NCSA HTTPd 1.3. В дальнейшем, с версии 2.х сервер был переписан заново и теперь не содержит кода NCSA, но имя осталось. На данный момент разработка ведется в ветке 2.2, а в версиях 1.3 и 2.0 производятся лишь исправления ошибок безопасности. Веб-сервер Apache разрабатывается и поддерживается открытым сообществом разработчиков под эгидой Apache Software Foundation и включён во многие программные продукты, среди которых СУБД Oracle и IBM Web``Sphere. == PHP == '''PHP''' (англ. PHP: Hypertext Preprocessor — «PHP: Препроцессор Гипертекста») — скриптовый язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством представителей хостинга. Входит в LAMP — «стандартный» набор для создания вебсайтов (Linux, Apache, ~MySQL, PHP (Python или Perl)). В области программирования для Сети PHP — один из популярнейших скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP отличается наличием ядра и подключаемых модулей, «расширений»: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т. п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения. Кроме этого, он может использоваться для решения административных задач в операционных системах UNIX, Linux, Windows и Mac OS X. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript. Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl. Ныне PHP используется сотнями тысяч разработчиков. Несколько миллионов сайтов сообщают о работе с PHP, что составляет более пятой доли доменов Интернета. Группа разработчиков PHP состоит из множества людей, добровольно работающих над ядром и расширениями PHP, и смежными проектами, такими, как PEAR или документация языка. == MySQL == '''MySQL''' (произносится «Май Эс Кью Эль») — свободная система управления базами данных (СУБД). MySQL является собственностью компании MySQL AB, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. Помимо этого компания MySQL AB разрабатывает функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации. MySQL характеризуется большой скоростью, устойчивостью и лёгкостью в использовании, является решением для малых и средних приложений. Наряду с Oracle Database это одна из самых быстрых СУБД на сегодняшний день. Входит в LAMP. Распространение СУБД MySQL на основе GPL и высокая скорость обработки запросов привело к тому, что эта база данных стала стандартом де-факто в услугах сетевого хостинга. Обычно ~MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. Гибкость СУБД MySQL обеспечивается поддержкой большого типа таблиц: пользователи могут выбрать как сверхбыстрые таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и более медленные, но чрезвычайно устойчивые таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующем принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL лицензированию в СУБД MySQL постоянно появляются новые типы таблиц. == Установка и настройка == 1. Необходимо установить Apache (httpd), PHP, MySQL (сервер и клиент) и компоненты для сопряжения PHP c MySQL: <source lang="bash"> # yum -y install httpd php mysql mysql-server php-mysql </source> 2. Настраиваем сервисы, чтобы автоматически запускались при загрузке системы: <source lang="bash"> # /sbin/service httpd start # /sbin/service mysqld start </source> 3. '''ВНИМАНИЕ!''' Установите пароль на пользователя root в MySQL, иначе каждый может получить полный доступ к серверу БД. Рекомендуется установить пароль не похожий на пароль пользователя root в системе. <source lang="bash"> # mysqladmin -u root password 'new-password' </source> 4. Некоторые настройки безопасности в MySQL: <source lang="bash"> # mysql -u root -p mysql> DROP DATABASE test; mysql> DELETE FROM mysql.user WHERE user = ''; mysql> FLUSH PRIVILEGES; </source> 5. Домашняя страница для Apache находится в /var/www/html/. Создайте в ней файл phpinfo.php: <source lang="php"> <?php phpinfo(); ?> </source> 6. Откройте в браузере адрес: http://localhost/phpinfo.php, Вы должны увидеть полную информацию о Вашей ситеме. ---- Источники: * http://masters.donntu.edu.ua/2006/fvti/zubritskaya/ind/index.htm * http://fedoranews.org/cms/node/2425 d7e08eab1847ccc83d9a5b12e68edf6afbb02f92 147 146 2008-05-25T14:55:53Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Apache == '''Apache HTTP-сервер''' (по-русски обычно произносят Апа&#769;чи или Апа&#769;ч) — это веб-сервер, с открытым исходным кодом. С апреля 1996 это самый популярный HTTP-сервер в Интернете: в мае 1999 года он работал на 57 % веб-серверов, в августе 2004 на 67 %. Основными достоинствами Apache считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т. д. Поддерживает IPv6. Недостатком наиболее часто называется отсутствие удобного стандартного интерфейса для администратора. Сервер был написан в начале 1995 года и считается, что его имя восходит к шуточному названию «a patchy» (англ. заплаточный), так как он устранял ошибки популярного тогда сервера Всемирной паутины NCSA HTTPd 1.3. В дальнейшем, с версии 2.х сервер был переписан заново и теперь не содержит кода NCSA, но имя осталось. На данный момент разработка ведется в ветке 2.2, а в версиях 1.3 и 2.0 производятся лишь исправления ошибок безопасности. Веб-сервер Apache разрабатывается и поддерживается открытым сообществом разработчиков под эгидой Apache Software Foundation и включён во многие программные продукты, среди которых СУБД Oracle и IBM Web``Sphere. == PHP == '''PHP''' (англ. PHP: Hypertext Preprocessor — «PHP: Препроцессор Гипертекста») — скриптовый язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством представителей хостинга. Входит в LAMP — «стандартный» набор для создания вебсайтов (Linux, Apache, ~MySQL, PHP (Python или Perl)). В области программирования для Сети PHP — один из популярнейших скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP отличается наличием ядра и подключаемых модулей, «расширений»: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т. п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения. Кроме этого, он может использоваться для решения административных задач в операционных системах UNIX, Linux, Windows и Mac OS X. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript. Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl. Ныне PHP используется сотнями тысяч разработчиков. Несколько миллионов сайтов сообщают о работе с PHP, что составляет более пятой доли доменов Интернета. Группа разработчиков PHP состоит из множества людей, добровольно работающих над ядром и расширениями PHP, и смежными проектами, такими, как PEAR или документация языка. == MySQL == '''MySQL''' (произносится «Май Эс Кью Эль») — свободная система управления базами данных (СУБД). MySQL является собственностью компании MySQL AB, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. Помимо этого компания MySQL AB разрабатывает функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации. MySQL характеризуется большой скоростью, устойчивостью и лёгкостью в использовании, является решением для малых и средних приложений. Наряду с Oracle Database это одна из самых быстрых СУБД на сегодняшний день. Входит в LAMP. Распространение СУБД MySQL на основе GPL и высокая скорость обработки запросов привело к тому, что эта база данных стала стандартом де-факто в услугах сетевого хостинга. Обычно ~MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. Гибкость СУБД MySQL обеспечивается поддержкой большого типа таблиц: пользователи могут выбрать как сверхбыстрые таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и более медленные, но чрезвычайно устойчивые таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующем принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL лицензированию в СУБД MySQL постоянно появляются новые типы таблиц. == Установка и настройка == 1. Необходимо установить Apache (httpd), PHP, MySQL (сервер и клиент) и компоненты для сопряжения PHP c MySQL: <source lang="bash"> # yum -y install httpd php mysql mysql-server php-mysql </source> 2. Настраиваем сервисы, чтобы автоматически запускались при загрузке системы: <source lang="bash"> # /sbin/service httpd start # /sbin/service mysqld start </source> 3. '''ВНИМАНИЕ!''' Установите пароль на пользователя root в MySQL, иначе каждый может получить полный доступ к серверу БД. Рекомендуется установить пароль не похожий на пароль пользователя root в системе. <source lang="bash"> # mysqladmin -u root password 'new-password' </source> 4. Некоторые настройки безопасности в MySQL: <source lang="bash"> # mysql -u root -p mysql> DROP DATABASE test; mysql> DELETE FROM mysql.user WHERE user = ''; mysql> FLUSH PRIVILEGES; </source> 5. Домашняя страница для Apache находится в /var/www/html/. Создайте в ней файл phpinfo.php: <source lang="php"> <?php phpinfo(); ?> </source> 6. Откройте в браузере адрес: http://localhost/phpinfo.php, Вы должны увидеть полную информацию о Вашей ситеме. ---- Источники: * http://masters.donntu.edu.ua/2006/fvti/zubritskaya/ind/index.htm * http://fedoranews.org/cms/node/2425 [[Category:Установка и настройка]] [[Category:Настройка системы]] 4d963a1ca2bb38304765ea731c17c24d73beefc6 Вопрос миграции на другую аппаратную платформу 0 62 148 2008-05-25T14:57:51Z OlegA 1 Новая: {{Суперпользователь}} == Подготовка == Отличительной особенностью Fedora 6 является использование одного у... wikitext text/x-wiki {{Суперпользователь}} == Подготовка == Отличительной особенностью Fedora 6 является использование одного универсального ядра для x86 архитектуры. Поэтому в случае миграции на любую систему совместимую с x86 нет необходимости переустанавливать систему, или пересобирать ядро. Предположим ситуацию в которой новая платформа содержит отличные дисковый контроллер, видео, аудио, USB, сетевые адаптеры, процессор (совместимой архитектуры). == Установка == == Обновление == [[Category:Установка и настройка]] [[Category:Настройка системы]] c7c8825e024dac2b1d37f110d8083a5cc6e2d204 Как подружить Samba и контроллер домена Windows 2003 0 63 149 2008-05-25T15:08:27Z OlegA 1 Новая: {{Суперпользователь}} == Графическая интеграция == При помощи [http://sadms.sourceforge.net/ SADMS]. == Ручная интеграция... wikitext text/x-wiki {{Суперпользователь}} == Графическая интеграция == При помощи [http://sadms.sourceforge.net/ SADMS]. == Ручная интеграция == === Требования === Samba собранная с опциями: --with-ldap --with-ads --with-krb5 --with-pam --with-winbind или просто установите из rpm. Условимся что: '''192.168.0.1''' – server.domain.com – это сервер Windows 2003 '''192.168.0.10''' – client.domain.com – клиентская машина Linux с Samba === Настройка разрешения имен === Надеюсь что на вашем контроллере домена поднят DNS (Domain Names Server) с зонами прямого и обратного просмотра. Если поднят, то в файле /etc/resolv.conf прописываем следующее: <pre> search domain.com domain domain.com nameserver 192.168.0.1 </pre> Если же в сети нет DNS (что вряд ли) сервера - можно воспользоваться файлами hosts на обеих машинах. На машине в файл /etc/hosts добавляем: <pre> 192.168.0.1 server.domain.com server 192.168.0.10 client.domain.com client </pre> На контроллере домена в файле %Systemroot%\~System32\drivers\etc\hosts пишем следующее: <pre> 192.168.0.1 server server.domain.com 192.168.0.10 client client.domain.com </pre> %Systemroot% - папка WINNT или WINDOWS(на системном диске) === Настройка Kerberos === Часть этого документа использует DOMAIN.COM прописными буквами. Удостоверьтесь, что в вашем конфиге krb5.conf правильный регистр! Приводим файл krb5.conf в соответствие с настройками вашей сети(не забывайте про регистр!). <source lang="ini"> [libdefaults] default_realm = DOMAIN.COM [realms] SERVER.DOMAIN.COM = { kdc = server.domain.com } [domain_realms] .domain.com = DOMAIN.COM </source> После этого выполняем команду(необходимо знать пароль администратора КД): <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: NOTICE: ticket renewable lifetime is 1 week </source> Возможные проблемы на этом этапе: <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: krb5_get_init_creds: Client (Admin@DOMAIN.COM) unknown </source> Надо проверить правильность ввода логина\пароль админа. <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: krb5_get_init_creds: unable to reach any KDC in realm (DOMAIN.COM) </source> Проверьте правильность настроек DNS и конфига krb5.conf <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: krb5_get_init_creds: Clock skew too great </source> Рассинхронизация времени на КД и клиенте – выполните команду net time set(в linux) Желательно выполнять данную команду раз в неделю(можно через cron). === Настройка Samba === Пожалуй, самая легкая часть настройки. Выкладываю уже готовый к эксплуатации конфиг (с комментариями к тому, на что надо обратить внимание): <source lang="ini"> [global] log file = /var/log/samba/log.%m socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192 null passwords = yes #Разрешить пустые пароли interfaces = 192.168.0.10/255.255.255.0 #На каком интерфейсе работать hosts allow = 192.168.0. 127.0.0.1 #Хостам из каких сетей разрешено encrypt passwords = yes idmap uid = 10000-20000 idmap gid = 10000-20000 auth methods = winbind winbind enum groups = yes winbind enum users = yes winbind use default domain = yes name resolve order = hosts wins bcast lmhosts case sensitive = no dns proxy = no netbios name = client #NetBIOS имя машины server string = My Linux password server = server.domain.com #dns имя сервера win 2003 realm = DOMAIN.COM #Имя рилма client use spnego = yes client signing = yes local master = no domain master = no preferred master = no workgroup = DOMAIN #Укороченное имя домена debug level = 2 security = ads dos charset = 866 unix charset = UTF-8 #Кодировка ФС –UTF-8 или KOI8-R max log size = 50 os level = 0 wins server = 192.168.0.1 #Укажите здесь WINS сервер, если он есть [upload] comment = Upload path = /srv/smb/upload browseable = yes writeable = yes directory mask = 0777 create mask = 0666 valid users = @”Администраторы домена”, DOMAIN\Пользователь </source> === Входим в Active Directory === Убедившись, что на контроллере домена нет машин с именем, которое мы использовали в конфиге. Выполняем команду: <source lang="bash"> # net ads join -U Administrator </source> === Настройка Winbind === 1. Откроем файл /etc/nsswitch.conf для редактирования и найдем следующие строчки: <pre> passwd: compat shadow: compat group: compat </pre> 2. Заменим их на: <pre> passwd: compat winbind shadow: compat group: compat winbind </pre> 3. Перезапустим сервис winbind: <source lang="bash"> # service winbind restart </source> 4. Проверим работу: <source lang="bash"> # wbinfo -t </source> если вывод: <pre> checking the trust secret via RPC calls succeeded </pre> значит доверительная учетная запись компьютера в домене создана. 5. Проверка пользователей и групп: <source lang="bash"> # wbinfo -u </source> <source lang="bash"> # wbinfo -g </source> должно вывести пользователей домена и группы домена. 6. Проверяем аутентификацию в домене: <source lang="bash"> # wbinfo -a user%123 </source> где ''user'' - пользователь домена, ''123'' - пароль. Если ответ: <pre> plaintext password authentication succeeded сhallenge/response password authentication succeeded </pre> значит аутентификация в домене работает. 7. Проверяем, чтобы наш Linux видел пользователей домена: <source lang="bash"> # id user </source> должно вывести id пользователя домена и к каким группам он относится. === Настройка PAM === Перед выполнением нижеперечисленных действий рекомендуется сделать бэкап всех редактируемых файлов. Файл /etc/pam.d/samba не требует редактирования, т.к. он уже содержит необходимое. Редактируем /etc/pam.d/login <pre> #%PAM-1.0 auth required pam_securetty.so auth sufficient pam_winbind.so auth sufficient pam_unix.so use_first_pass auth required pam_stack.so service=system-auth auth required pam_nologin.so account sufficient pam_winbind.so account required pam_stack.so service=system-auth password required pam_stack.so service=system-auth session required pam_stack.so service=system-auth session optional pam_console.so </pre> Теперь на машину с linux можно заходить используя доменные аккаунты(DOMAIN\User). === Поддержка SSH === Для того, чтобы можно было использовать доменные аккаунты для входа через ssh в файле /etc/pam.d/sshd делаем изменения аналогично /etc/pam.d/login. === Заключение === Ну вот и все. Теперь можно запустить Samba: <source lang="bash"> # service smb start # service nmb start # service winbind start </source> В случае неполадок смотрим: /var/log/samba [[Category:Установка и настройка]] [[Category:Настройка системы]] 56fc26f6f7401af3277f6b11cd536d50e25a12e4 Мультимедийная клавиатура в Fedora 0 64 150 2008-05-25T15:24:42Z OlegA 1 Новая: {{Суперпользователь}} Существует много способов заставить работать мультимедийную клавиатуру под Linu... wikitext text/x-wiki {{Суперпользователь}} Существует много способов заставить работать мультимедийную клавиатуру под Linux. Мы рассмотрим один из вариантов с помощью демона [http://lineak.sourceforge.net/ Lineakd]. У Lineakd существует набор плагинов, который позволяет управлять несколькими приложениями + выводить OSD (индикатор). '''''Примечание:''' Если у Вас USB клавиатура, то возможны проблемы с данным демоном.'' == Установка == 1. Устанавливаем пакеты с правами пользователя root: <source lang="bash"> # yum install lineakd lineak-defaultplugin lineak-xosdplugin lineak-kdeplugins </source> если Вы не используете KDE, то последний пакет устанавливать нет необходимости. 2. Определите название Вашей клавиатуры. == Настройка == 1. Проверка всех клавиш. Запускаем в консоли: <source lang="bash"> # xev </source> при нажатии клавиши пишется следующая информация: <source lang="bash"> KeyPress event, serial 23, synthetic NO, window 0x5a00001, root 0x36, subw 0x0, time 2407465070, (146,-62), root:(719,272), state 0x0, keycode 234 (keysym 0x0, NoSymbol), same_screen YES, XLookupString gives 0 characters: "" </source> нас интересует только одно **keycode 234** - это код кнопки. Проверяем только мультимедийные кнопки и желательно записываем эти данные. 2. Если при нажатии какой-то кнопки ничего не происходит, значит ядро не знает эту кнопку и необходимо обучить ядро это делать. Для этого необходимо выбрать уникальный код и присвоить клавише этот код: <source lang="bash"> # dmesg </source> и смотрим на строки типа: <source lang="bash"> atkbd.c: Use 'setkeycodes e013 ' to make it known. </source> вот мы имеем и индификатор. Теперь просто выполняем команду типа: <source lang="bash"> # setkeycodes e013 140 </source> и затем проверяем снова в xev. Так делаем для каждой неизвестной клавиши. Теперь добавляем setkeycodes e013 140 в /etc/rc.local, чтобы при загрузке автоматически назначать клавишам код. 3. Запускаем в консоли, чтобы найти свою клавиатуру: <source lang="bash"> $ lineakd -l </source> находим свою клавиатуру и запоминаем код. 4. Создаём кофигуратор: <source lang="bash"> $ lineakd -c TYPE </source> где TYPE - ваш код клавиатуры. Конфигуратор будет создан в ~~/.linek/lineakd.conf 5. Проверяем работоспособность мультимедийных клавиш: <source lang="bash"> $ lineakd -v </source> 6. Переходим к настройке кофигурации ~/.linek/lineakd.conf. Открываем его в любом текстовом редакторе и получаем: <pre> # LinEAK - Linux support for Easy Access and Internet Keyboards # Copyright (c) 2001,2002, 2003 Sheldon Lee Wen <leewsb@hotmail.com> (Current Maintainer) # and Mark Smulders <Mark@PIRnet.nl> # http://lineak.sourceforge.net # # lineakd configuration file # # example key configuration: # play = "xmms --play-pause" # eject = EAK_EJECT # # Lineakd supports the following modifier keys: # control alt shift mod2 mod3 mod4 mod5 CdromDevice = /dev/cdrom Display_align = center Display_color = 0aff00 Display_font = -adobe-helvetica-bold-r-normal-*-*-240-*-*-p-*-*-* Display_hoffset = 0 Display_plugin = xosd Display_pos = bottom Display_soffset = 1 Display_timeout = 3 Display_voffset = 50 KeyboardType = ***** MixerDevice = /dev/mixer RAWCommands = Screensaver = conffilename = /home/oleg/.lineak/lineakd.conf keystate_capslock = keystate_numlock = keystate_scrolllock = Back = Calculator = Copy = Cut = Favorites = Forward = Mail = Mute = Next = Play|Pause = Previous = Search = Sleep = Stop = VolumeDown = VolumeUp = WWW = </pre> 7. Кофигуратор разделён на две части. Первая отвечает за OSD, а вторая за макросы клавиш. 8. Интуитивно всё понятно. 9. Я лишь, приведу мою кофигурацию в пример: <pre> # LinEAK - Linux support for Easy Access and Internet Keyboards # Copyright (c) 2001,2002, 2003 Sheldon Lee Wen <leewsb@hotmail.com> (Current Maintainer) # and Mark Smulders <Mark@PIRnet.nl> # http://lineak.sourceforge.net # # lineakd configuration file # # example key configuration: # play = "xmms --play-pause" # eject = EAK_EJECT # # Lineakd supports the following modifier keys: # control alt shift mod2 mod3 mod4 mod5 CdromDevice = /dev/cdrom Display_align = center Display_color = 0aff00 Display_font = -adobe-helvetica-bold-r-normal-*-*-240-*-*-p-*-*-* Display_hoffset = 0 Display_plugin = xosd Display_pos = bottom Display_soffset = 1 Display_timeout = 3 Display_voffset = 50 KeyboardType = CY0108 MixerDevice = /dev/mixer RAWCommands = Screensaver = conffilename = /home/oleg/.lineak/lineakd.conf keystate_capslock = keystate_numlock = keystate_scrolllock = Back = KONQUEROR_BACK Calculator = kcalc Copy = Cut = Favorites = KONQUEROR_BOOKMARK Forward = KONQUEROR_FORWARD Mail = Mute = EAK_MUTE [Next] Next = AMAROK_FORWARD [Play / Pause] Play|Pause = AMAROK_PLAYPAUSE [Previous] Previous = AMAROK_BACK Search = [Lock] Sleep = KDE_LOCK_DESKTOP [Stop] Stop = AMAROK_STOP VolumeDown = EAK_VOLDOWN(1) VolumeUp = EAK_VOLUP(1) WWW = firefox </pre> То что в квадратных скобках - это надпись, которая будет отображаться в OSD при нажатии на эту кнопку. * LINEAK_DEFAULTPLUGIN: ** EAK_MUTE - выключить звук; ** EAK_MUTE(X,device,X2,device2,X3,device3,...) - выключить звук на определённом устройстве, если больше 1 звуковой карты в системе; ** EAK_VOLUP - увеличение громкости; ** EAK_VOLDOWN - уменьшение громкости; ** EAK_VOLUP(X) - увеличение громкости на X-единицу (от 1 до 5); ** EAK_VOLDOWN(X) - уменьшение громкости на X-единицу (от 1 до 5); ** EAK_VOLUP(X,device,X2,device2,X3,device3,...) - увеличение громкости для определённого устройства; ** EAK_VOLDOWN(X,device,X2,device2,X3,device3,...) - уменьшение громкости для определённого устройства; ** EAK_OPEN_TRAY, EAK_OPEN_TRAY_SCSI, EAK_CLOSE_TRAY - управление CD/DVD-приводом; ** EAK_SCREEN_LOCK(X) - включение окна блокировки, где X - или KDE или GNOME или XSCREENSAVER. * LINEAK_KDEPLUGINS: ** juk_plugin: ** JUK_PLAY ** JUK_PAUSE ** JUK_STOP ** JUK_PLAYPAUSE ** JUK_BACK ** JUK_FORWARD ** JUK_SEEKBACK ** JUK_SEEKFORWARD ** JUK_VOLUMEUP ** JUK_VOLUMEDOWN ** JUK_VOLUMEMUTE ** JUK_STARTPLAYINGPLAYLIST ** JUK_OPENFILE ** kdesktop_plugin: *** KDE_LOCK_DESKTOP *** KMENU *** KDESKTOP_NEXT *** KDESKTOP_PREVIOUS *** KDE_LOGOUT *** KDESKTOP_EXECUTE ** kmail_plugin: *** KMAIL_COMPOSE(from,to,cc,subject,attachment) ** kmix_plugin: *** KMIX_MUTE - выключить звук; *** KMIX_MUTE(device,device2,device3,...) - выключить звук на определённом устройстве, если больше 1 звуковой карты в системе; *** KMIX_VOLUP - увеличение громкости; *** KMIX_VOLDOWN - уменьшение громкости; *** KMIX_VOLUP(X) - увеличение громкости на X-единицу (от 1 до 5); *** KMIX_VOLDOWN(X) - уменьшение громкости на X-единицу (от 1 до 5); *** KMIX_VOLUP(X,device,X2,device2,X3,device3,...) - увеличение громкости для определённого устройства; *** KMIX_VOLDOWN(X,device,X2,device2,X3,device3,...) - уменьшение громкости для определённого устройства; ** konqueror_plugin: *** KONQUEROR_BACK - назад; *** KONQUEROR_FORWARD - вперед; *** KONQUEROR_HOME - домашняя страница; *** KONQUEROR_STOP - стоп; *** KONQUEROR_REFRESH или KONQUEROR_RELOAD - обновить; *** KONQUEROR_NEWTAB - новая вкладка; *** KONQUEROR_NEXTTAB - следующая вкладка; *** KONQUEROR_PREVTAB - предыдущая вкладка; *** KONQUEROR_BOOKMARK - избранное. 8. Для запуска Lineakd необходимо выполнить команду: <source lang="bash"> $ lineakd & </source> 9. Для автоматического запуска в KDE, создайте файл lineakd.sh в ~~/.kde/Autostart и не забудьте выставить флаг "выполняемый": <source lang="bash"> #!/bin/sh lineakd & </source> [[Category:Установка и настройка]] [[Category:Настройка системы]] c9128b895b8044c13ccfdfedf3f81490327b10cf Установка локального принтера 0 65 151 2008-05-25T15:42:52Z OlegA 1 Новая: {{Суперпользователь}} == Настройка CUPS через web-интерфейс == Запустите свой любимый броузер и откройте ст... wikitext text/x-wiki {{Суперпользователь}} == Настройка CUPS через web-интерфейс == Запустите свой любимый броузер и откройте страницу http://localhost:631 — вы увидите интерфейс настройки CUPS. Выберите раздел «Manage Printers», далее раздел «Add Printer». Затем у вас спросят имя и пароль администратора CUPS; по умолчанию это администратор системы (root). Появится первый диалог — достаточно указать имя (Name) принтера, описание (Description) носит вспомогательный характер, а местоположение (Location) нужно только в том случае, если у вас настроена сложная система разграничения доступа в CUPS. В следующем диалоге производится выбор устройства, к которому подключён принтер. Два последующих — выбор модели и производителя принтера. Напоследок можно заказать печать пробной страницы. Может возникнуть ситуация, что сочетания производитель/модель вашего принтера не окажется в списке, предложенном CUPS — это означает, что в базе данных CUPS не нашлось описания для вашей модели принтера. В этот момент отчаиваться не следует. Описание принтера в CUPS — это файл модель_принтера.ppd, PPD-файлы для известных моделей CUPS держит в каталоге /usr/share/cups/model, имеющийся там список принтеров далеко не исчерпывающий. Однако познакомить CUPS с новым принтером очень легко, если принтер поддерживает один из стандартных языков управления и будет работать с одним из уже существующих драйверов (что почти всегда так). Для этого достаточно найти PPD-файл для нужной модели принтера и поместить его в зону видимости CUPS. Большую базу описаний принтеров предоставляет foomatic (ниже написано о том, как им воспользоваться), если нужной модели не нашлось и там, стоит поискать PPD-файл на сайте производителя принтера. == Как удалить лишние принтеры? == Если вы слишком увлеклись настройками и теперь путаетесь между десятком заведенных принтеров, то самое время удалить лишние. Удаление можно производить вручную удалением описания из конфигурационых файлов спулера (/etc/cups/printers.conf). Для CUPS можно вновь воспользоваться Web-интерфейсом. [[Category:Установка и настройка]] [[Category:Настройка системы]] 55ee0285dbe621d55b73fbfbeac8b815441f65eb Установка сетевого принтера 0 66 152 2008-05-25T15:45:32Z OlegA 1 Новая: {{Суперпользователь}} # Заходим на страницу Web-интерфейса http://localhost:631/admin?op=add-printer # Заполняем все поля, ж... wikitext text/x-wiki {{Суперпользователь}} # Заходим на страницу Web-интерфейса http://localhost:631/admin?op=add-printer # Заполняем все поля, жмем ''Continue'' # Выбираем тип протокола связи. Если подключаемся к существующей системе CUPS выбираем <code>Internet Printing Protocol</code>, если принтер установлен и расшарен на Windows-системе, то выбираем Windows Printer via SAMBA # Прописываем адрес нахождения сетевого принтера. Для Windows-систем необходимо прописать полный путь <code>smb://username:password@computername/printername</code>. # На следующем шаге выбираем производителя и модель или если нет в списке нужной модели, то добавляем PPD-файл. # Печатаем пробную страницу. [[Category:Установка и настройка]] [[Category:Настройка системы]] c89afeedd2dd4921db1dae03070f6a1b3a938887 Сетевой доступ к локальному принтеру 0 67 153 2008-05-25T15:48:29Z OlegA 1 Новая: {{Суперпользователь}} == Требования == # Достать драйвера принтера под необходимую систему (Windows) # Настр... wikitext text/x-wiki {{Суперпользователь}} == Требования == # Достать драйвера принтера под необходимую систему (Windows) # Настроить SAMBA, так чтобы с другой системы мы могли без проблем подключаться к нашей (linux) == Конфигурация SAMBA == 1. Редактируем /etc/samba/smb.conf В <code>[global]</code> добавляем: <source lang="ini"> printing = CUPS printcap name = CUPS show add printer wizard = No </source> а затем добавляем в конце файла smb.conf: <source lang="ini"> [printers] comment = Print Temporary Spool Configuration path = /var/spool/samba printable = Yes guest ok = Yes use client driver = Yes browseable = No </source> 2. Перезапускаем smb: <source lang="bash"> # service smb restart </source> == Добавление принтера в систему Windows == # Открываем сетевое окружение. # Находим нашу систему (linux). # Входим. # Заходим в папку с принтерами. # Кликаем 2 раза по принтеру. # Появляется окно, что типа не может найти драйвер и предлагает нам указать драйвер. # Указываем нужный драйвер. # Проверяем, печатаем тестовую страницу. [[Category:Установка и настройка]] [[Category:Настройка системы]] 90dcc2053bb0e2830f01120fe06926a8f84343be Управление и мониторинг UPS 0 68 154 2008-05-25T16:05:16Z OlegA 1 Новая: {{Суперпользователь}} В данном обзоре мы рассмотрим настройку и конфигурацию NUT (Network UPS Tools). == Установ... wikitext text/x-wiki {{Суперпользователь}} В данном обзоре мы рассмотрим настройку и конфигурацию NUT (Network UPS Tools). == Установка == 1. Проверьте, установлены ли у Вас нужные компоненты: nut и nut-client. 2. Если нет, то установим: <source lang="bash"> # yum install nut nut-client </source> == Настройка == 1. Редактируем файл /etc/ups/ups.conf. <source lang="ini"> [myupsname] driver = mydriver port = /dev/ttyS1 desc = "Workstation" </source> где <code>myupsname</code> - название UPS (любое), <code>driver</code> - [[#Таблица поддерживаемых UPS и драйверов|используемый драйвер]], <code>port</code> - последовательный порт (COM1 - /dev/ttyS0, COM2 - /dev/ttyS1, и т.д.) к которому подключён UPS, <code>desc</code> - описание. 2. Запускаем драйвер: <source lang="bash"> # upsdrvctl start </source> 3. Результат должен быть похожий: <pre> Network UPS Tools - UPS driver controller 1.5.12 Network UPS Tools - Belkin Smart protocol driver 0.21 (1.5.12) Detected F6C525-SER on /dev/cuaa0 </pre> 4. Теперь необходимо настроить сервер, который собирает информацию с драйвера для клиента. Редактируем /etc/ups/upsd.conf <pre> ACL all 0.0.0.0/0 ACL localhost 127.0.0.1/32 ACCEPT localhost REJECT all </pre> задаём правила для подключения клиента. Выше правило разрешающее подключение клиента только с локального хоста. Кстати, NUT позволяет мониторить UPS удалённо. 5. Запускаем сервер: <source lang="bash"> # upsd </source> 6. Результат должен быть похожим на: <pre> Network UPS Tools upsd 1.5.12 Connected to UPS [belkin]: belkin-cuaa0 Synchronizing...done </pre> 7. Теперь запустим клиент и проверим данные: <source lang="bash"> # upsc myupsname@localhost ups.status </source> где <code>myupsname</code> - название UPS, которое было указано в /etc/ups/ups.conf 8. Если UPS нормально работает, то должно вывести **OL** (On-Line) 9. Для получения полной информации запустите: <source lang="bash"> # upsc myupsname@localhost </source> 10. Есть возможность установить даже пароль на просмотр информации. Подробнее в <code>man</code> == Автоматическое выключение при низком уровне заряда аккумулятора. == Для автоматического выключения необходимо сделать ещё несколько настроек. 1. Редактируем /etc/ups/upsd.users. Добавляем пользователя и пароль. <source lang="ini"> [monuser] password = mypass allowfrom = localhost upsmon master </source> 2. Редактируем /etc/ups/upsmon.conf <source lang="ini"> MONITOR myupsname@localhost 1 monuser mypass master </source> где, <code>myupsname</code> - название UPS, которое было указано в /etc/ups/ups.conf, <code>monuser mypass</code> - имя пользователя и пароль, который указали в /etc/ups/upsd.users <pre> POWERDOWNFLAG /etc/killpower </pre> 3. Перегружаем сервер: <source lang="bash"> # upsd -c reload </source> 4. Для запуска мониторинга при старте включаем запуск сервиса ups: <source lang="bash"> # chkconfig --level 35 ups on # sed -i 's/MODEL=NONE/MODEL=upsdrvctl/g' /etc/sysconfig/ups </source> == Настройка для Fedora 8 == В Fedora 8 настройка производиться, как описано выше, за исключением, что в {{{/etc/sysconfig/ups}}} необходимо указывать модель (драйвер), например: <pre> MODEL=megatec </pre> == Таблица поддерживаемых UPS и драйверов == [http://www.networkupstools.org/compat/stable.html Подробный список]. == Графические клиенты == * [http://www.knut.noveradsl.cz/knutclient/ KNutClient] * [http://rudd-o.com/projects/ups-monitor/ UPS monitor] [[Category:Установка и настройка]] [[Category:Настройка системы]] cf9ac4f5c4b616cf9dff7481034d5d2528eb855a 165 154 2008-05-29T10:17:03Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} В данном обзоре мы рассмотрим настройку и конфигурацию NUT (Network UPS Tools). == Установка == 1. Проверьте, установлены ли у Вас нужные компоненты: nut и nut-client. 2. Если нет, то установим: <source lang="bash"> # yum install nut nut-client </source> == Настройка == 1. Редактируем файл /etc/ups/ups.conf. <source lang="ini"> [myupsname] driver = mydriver port = /dev/ttyS1 desc = "Workstation" </source> где <code>myupsname</code> - название UPS (любое), <code>driver</code> - [[#Таблица поддерживаемых UPS и драйверов|используемый драйвер]], <code>port</code> - последовательный порт (COM1 - /dev/ttyS0, COM2 - /dev/ttyS1, и т.д.) к которому подключён UPS, <code>desc</code> - описание. 2. Запускаем драйвер: <source lang="bash"> # upsdrvctl start </source> 3. Результат должен быть похожий: <pre> Network UPS Tools - UPS driver controller 1.5.12 Network UPS Tools - Belkin Smart protocol driver 0.21 (1.5.12) Detected F6C525-SER on /dev/cuaa0 </pre> 4. Теперь необходимо настроить сервер, который собирает информацию с драйвера для клиента. Редактируем /etc/ups/upsd.conf <pre> ACL all 0.0.0.0/0 ACL localhost 127.0.0.1/32 ACCEPT localhost REJECT all </pre> задаём правила для подключения клиента. Выше правило разрешающее подключение клиента только с локального хоста. Кстати, NUT позволяет мониторить UPS удалённо. 5. Запускаем сервер: <source lang="bash"> # upsd </source> 6. Результат должен быть похожим на: <pre> Network UPS Tools upsd 1.5.12 Connected to UPS [belkin]: belkin-cuaa0 Synchronizing...done </pre> 7. Теперь запустим клиент и проверим данные: <source lang="bash"> # upsc myupsname@localhost ups.status </source> где <code>myupsname</code> - название UPS, которое было указано в /etc/ups/ups.conf 8. Если UPS нормально работает, то должно вывести '''OL''' (On-Line) 9. Для получения полной информации запустите: <source lang="bash"> # upsc myupsname@localhost </source> 10. Есть возможность установить даже пароль на просмотр информации. Подробнее в <code>man</code> == Автоматическое выключение при низком уровне заряда аккумулятора. == Для автоматического выключения необходимо сделать ещё несколько настроек. 1. Редактируем /etc/ups/upsd.users. Добавляем пользователя и пароль. <source lang="ini"> [monuser] password = mypass allowfrom = localhost upsmon master </source> 2. Редактируем /etc/ups/upsmon.conf <source lang="ini"> MONITOR myupsname@localhost 1 monuser mypass master </source> где, <code>myupsname</code> - название UPS, которое было указано в /etc/ups/ups.conf, <code>monuser mypass</code> - имя пользователя и пароль, который указали в /etc/ups/upsd.users <pre> POWERDOWNFLAG /etc/killpower </pre> 3. Перегружаем сервер: <source lang="bash"> # upsd -c reload </source> 4. Для запуска мониторинга при старте включаем запуск сервиса ups: <source lang="bash"> # chkconfig --level 35 ups on # sed -i 's/MODEL=NONE/MODEL=upsdrvctl/g' /etc/sysconfig/ups </source> == Настройка для Fedora 8 == В Fedora 8 настройка производиться, как описано выше, за исключением, что в <code>/etc/sysconfig/ups</code> необходимо указывать модель (драйвер), например: <pre> MODEL=megatec </pre> == Таблица поддерживаемых UPS и драйверов == [http://www.networkupstools.org/compat/stable.html Подробный список]. == Графические клиенты == * [http://www.knut.noveradsl.cz/knutclient/ KNutClient] * [http://rudd-o.com/projects/ups-monitor/ UPS monitor] [[Category:Установка и настройка]] [[Category:Настройка системы]] c78359065db88f4c9b480a13100fa2e370373dcf Test 0 20 155 48 2008-05-27T07:54:44Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' <email>pidari@gay.md</email> fdcc0787f649a48260b2bac6570b1fea0f2ef3ce 156 155 2008-05-27T08:06:49Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| |шапка1 |шапка2 |- |значение1 |значение2 |- |<email>pidari@gay.md</email> |<email>lezbi@gay.md</email> |- |} 3c6f1dfb98d0ed6632c919735cf0b56907153288 157 156 2008-05-27T08:13:44Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} 93cb3db51ae00203548c30486d1a6577514ba672 158 157 2008-05-27T13:09:02Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> 13b03bf7de9fc4eb9b1fcb80ab4867dccbbab194 159 158 2008-05-27T13:16:18Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree>Установка и настройка</categorytree> 28ca3885c9d7e2e045b60121655cb138fad7d2c6 160 159 2008-05-27T13:18:22Z OlegA 1 wikitext text/x-wiki == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> 751289fbc29083b5c90405683aaf07da059fc2a0 162 160 2008-05-27T20:50:36Z OlegA 1 wikitext text/x-wiki <password>test</password> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> 13ca5802616bdc12c5b8a6d3ebefeb0dab9c0c56 163 162 2008-05-27T20:56:39Z OlegA 1 wikitext text/x-wiki <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> 569ed0be5daa46b336c084ce527addb901dd4a01 MediaWiki:Sidebar 8 69 161 2008-05-27T13:44:12Z OlegA 1 Новая: * navigation ** mainpage|mainpage ** portal-url|portal ** currentevents-url|currentevents ** recentchanges-url|recentchanges ** randompage-url|randompage ** helppage|help wikitext text/x-wiki * navigation ** mainpage|mainpage ** portal-url|portal ** currentevents-url|currentevents ** recentchanges-url|recentchanges ** randompage-url|randompage ** helppage|help e73334396f83c1fdab34e439a22a4f3d071be24e 164 161 2008-05-28T09:24:53Z OlegA 1 wikitext text/x-wiki * navigation ** mainpage|mainpage ** recentchanges-url|recentchanges ** randompage-url|randompage ** helppage|help b2d14375e127603f69ad397e015939209ed30dd1 Сервисы 0 70 166 2008-05-29T10:21:19Z OlegA 1 Новая: {{Суперпользователь}} == Что такое "сервис"? == Сервис (''от англ. service служба'') - обслуживание пользователе... wikitext text/x-wiki {{Суперпользователь}} == Что такое "сервис"? == Сервис (''от англ. service служба'') - обслуживание пользователей сети в разных сферах. == Профили сервисов == Существует 4 профилей сервисов (runlevel): * runlevel 1: Single-User Mode * runlevel 2: Multi-User Mode * runlevel 3: Multi-User Mode with Networking * runlevel 5: X11 (runlevel 3 + X Window System). '''''Примечание:''' к любым манипуляциям с сервисами имеет доступ только root'' Узнать текущий профиль можно по команде: <source lang="bash"> # /sbin/runlevel </source> Обычно сервисы, которые не привязаны к X, запускаются в профиле 3, а те, что зависят от X - в 5, в 1-ом обычно нет сервисов. Чтобы изменить профиль сервисов необходимо выполнить команду: <source lang="bash"> # /sbin/init RUNLEVEL </source> где <code>RUNLEVEL</code> - профиль сервисов. '''''Примечание:''' при смене с 5-го на другой профиль Хorg автоматически будет приостановлен.'' При загрузке системы можно указать профиль в GRUB, выполнив команду: <pre> kernel RUNLEVEL </pre> где <code>RUNLEVEL</code> - профиль сервисов. == Включение/Выключение сервисов == Посмотреть список запущенных и не запущенных сервисов можно по команде: <source lang="bash"> # /sbin/chkconfig --list </source> Включение сервиса производится по команде: <source lang="bash"> # /sbin/chkconfig --level 35 SERVICE on </source> где <code>35</code> - профили сервисов, <code>SERVICE</code> - имя сервиса, <code>on</code> - обозначает включение <code>off</code> - выключение) == Управление сервисами == Получить статус всех сервисов можно по команде: <source lang="bash"> # /sbin/service --status-all </source> или для определённого сервиса: <source lang="bash"> # /sbin/service SERVICE status </source> где <code>SERVICE</code> - имя сервиса. Вы можете узнать о определённых командах управления сервиса: <source lang="bash"> # /sbin/service SERVICE </source> где <code>SERVICE</code> - имя сервиса. [[Category:Настройка и конфигурация]] [[Category:Установка и настройка]] c9f2840172595d50f5d43a811ac9b32b8e4e3f3e 167 166 2008-05-29T10:21:57Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Что такое "сервис"? == Сервис (''от англ. service служба'') - обслуживание пользователей сети в разных сферах. == Профили сервисов == Существует 4 профилей сервисов (runlevel): * runlevel 1: Single-User Mode * runlevel 2: Multi-User Mode * runlevel 3: Multi-User Mode with Networking * runlevel 5: X11 (runlevel 3 + X Window System). '''''Примечание:''' к любым манипуляциям с сервисами имеет доступ только root'' Узнать текущий профиль можно по команде: <source lang="bash"> # /sbin/runlevel </source> Обычно сервисы, которые не привязаны к X, запускаются в профиле 3, а те, что зависят от X - в 5, в 1-ом обычно нет сервисов. Чтобы изменить профиль сервисов необходимо выполнить команду: <source lang="bash"> # /sbin/init RUNLEVEL </source> где <code>RUNLEVEL</code> - профиль сервисов. '''''Примечание:''' при смене с 5-го на другой профиль Хorg автоматически будет приостановлен.'' При загрузке системы можно указать профиль в GRUB, выполнив команду: <pre> kernel RUNLEVEL </pre> где <code>RUNLEVEL</code> - профиль сервисов. == Включение/Выключение сервисов == Посмотреть список запущенных и не запущенных сервисов можно по команде: <source lang="bash"> # /sbin/chkconfig --list </source> Включение сервиса производится по команде: <source lang="bash"> # /sbin/chkconfig --level 35 SERVICE on </source> где <code>35</code> - профили сервисов, <code>SERVICE</code> - имя сервиса, <code>on</code> - обозначает включение <code>off</code> - выключение) == Управление сервисами == Получить статус всех сервисов можно по команде: <source lang="bash"> # /sbin/service --status-all </source> или для определённого сервиса: <source lang="bash"> # /sbin/service SERVICE status </source> где <code>SERVICE</code> - имя сервиса. Вы можете узнать о определённых командах управления сервиса: <source lang="bash"> # /sbin/service SERVICE </source> где <code>SERVICE</code> - имя сервиса. [[Category:Настройка системы]] [[Category:Установка и настройка]] 847f467f17193216e615a1bd41879ee954de4f2b Файервол 0 71 168 2008-05-29T10:25:18Z OlegA 1 Новая: {{Суперпользователь}} В большинстве случаев, начинающий пользователь Linux немного знает об iptables, напри... wikitext text/x-wiki {{Суперпользователь}} В большинстве случаев, начинающий пользователь Linux немного знает об iptables, например как с помощью iptables создать firewall (огненную стену). Главная цель firewall это ограничения доступа к Вашему компьютеру из внешней сети. Однако утверждение что iptables это firewall под Linux неправильно! iptables позволяет не только создать firewall, с его помощью можно сделать NAT-сервер (позволяет локальную сеть выводить в интернет), маркировать пакеты в пределах компьютера, изменять поля в пакетах и многое другое. Важно отметить что с помощью iptables нельзя ограничивать скорость трафика, этой задачей занимается iproute2. Сориентируем начинающего пользователя какой программный пакет используются для работы с пакетами, а какой для управления трафиком: iptables предназначен для обработки пакетов, под словом обработка понимается такие задачи как фильтрование пакетов, создание firewall, NAT-сервера, маркировка пакетов и так далее. iproute2 используется для управления трафиком. Управление трафиком это ограничение скоростей, задание алгоритмов обработки пакетов в зависимости от их приоритетов. Для управления трафиком в большинстве случаев iproute2 использует маркировку пакета которая была сделана iptables. Для управления трафиком с помощью iproute2 используется команда tc, а для обработки пакетов с помощью iptables - команда iptables. Прежде чем использовать iptables необходимо иметь ясное представление о том, через какие этапы обработки проходит пакет. Поскольку Linux есть UNIX-овая система в ней изначально заложены возможности работы не только как десктопа, но и как сетевого сервера. В задачи сервера входит обработка трех типов пакетов: # '''INTERNET --> Программа работающая на компьютере''' # '''Программа работающая на компьютере --> INTERNET''' # '''INTERNET <--> Локальная вычислительная сеть транзитные пакеты''' Для эффективной обработки пакетов в iptables выделено три основных этапа обработки. Этапом обработки в iptables называется чепочки. В iptables есть три основных цепочки: * '''INPUT''' правила для входящих пакетов. * '''OUTPUT''' правила для исодящих пакетов.от локальных процессов * '''FORWARD''' правила для транзитных пакетов В каждую из этих трех цепочек можно добавлять свои команды фильтрации. Есть следующие команды фильтрации: '''DROP''' (уничтожить пакет), '''REJECT''' (уничтожить пакет и послать сообщение источнику об этом), '''ACCEPT''' (пакет принимается прародительской цепочкой ('''INPUT''', '''OUTPUT''' или '''FORWARD''') и прекращает прохождения по всем цепочкам у которых прародителем является одна из основных цепочек: '''INPUT''', '''OUTPUT''' или '''FORWARD'''). В каждую из цепочек '''INPUT''', '''OUTPUT''' или '''FORWARD''' можно добавить свою цепочку переход на которую будет при выполнение опреленных параметров пакета (таких как адрес источника, порт и так далее). Для возврата из своей цепочки в родительскую используется команда '''RETURN'''. В состав пакета iptables входят две очень удобные утилиты, особенно если вам приходится иметь дело с большими наборами правил. Называются они iptables-save и iptables-restore. Первая из них сохраняет, а вторая восстанавливает наборы правил в/из файла. По своему формату файл с набором правил похож на обычные файлы сценариев командной оболочки (shell), в чем вы сможете убедиться чуть ниже. Один из плюсов использования утилит iptables-save и iptables-restore состоит в высокой скорости загрузки и сохранения больших наборов правил. Главный недостаток, связанный с установкой наборов правил из сценариев командной оболочки состоит в том, что команда iptables копирует набор правил из пространства ядра в пространство пользователя, вставляет, добавляет или изменяет правило и, наконец, весь набор правил копируется обратно в пространство ядра. Эта последовательность действий выполняется для каждого правила, которое вставляется или изменяется в наборе правил. Эта проблема легко решается с помощью iptables-save и iptables-restore Утилита iptables-save записывает набор правил в обычный текстовый файл в особом формате. Утилита iptables-restore загружает набор правил из файла. Главное преимущество этих утилит состоит в том, что они производят сохранение/восстановление всего набора правил за одно обращение. iptables-save "в один присест" получает из пространства ядра и записывает в файл весь набор правил, а iptables-restore загружает из файла и переписывает за одно обращение в пространство ядра набор правил для каждой таблицы. Или другими словами -- вместо того, чтобы обращаться огромное число раз к ядру для того чтобы получить набор правил, а затем опять записать его в пространство ядра не меньшее число раз, можно просто сохранить набор правил в файл, а затем загружать его из файла, при этом число перемещений наборов в ядро будет зависеть только от числа используемых таблиц. Вы уже наверняка поняли, что эти утилиты могут представлять для вас интерес, особенно если вам приходится загружать огромные наборы правил. Однако использование этих утилит имеет и свои отрицательные стороны, которые мы рассмотрим в следующем разделе. У вас может сложиться впечатление, что iptables-restore может обрабатывать своего рода сценарии. Пока не может и вероятнее всего -- никогда не сможет. В этом и состоит главный недостаток iptables-restore. Чтобы было более понятно -- представьте себе случай, когда брандмауэр получает динамический IP-адрес и вы хотите вставить его значение в свои правила во время загрузки системы. Решить эту проблему с помощью iptables-restore практически невозможно. Как одно из решений можно предложить написать небольшой скрипт, который определяет значение IP-адреса и затем вставляет его в набор правил (например, с помощью sed) на место некоторого ключевого слова. Здесь вам потребуется создать временный файл, в котором производятся изменения и который затем загружается с помощью iptables-restore. Однако такой вариант решения порождает свои проблемы -- вам придется отказаться от утилиты iptables-save поскольку она может затереть, созданную вручную, заготовку файла с правилами для iptables-restore. Вобщем -- довольно неуклюжее решение. Еще один вариант -- хранить в файле для iptables-restore только статические правила, а затем с помощью небольшого скрипта добавлять правила с динамическими параметрами. Конечно же вы уже поняли, что это решение такое же неуклюжее как и первое. Вам придется смириться с тем, что iptables-restore не очень хорошо подходит для случая с динамически назначаемым IP-адресом и вообще для случаев, когда вам потребуется динамически изменять набор правил в зависимости от конфигурации системы и т.п.. Еще один недостаток iptables-restore и iptables-save в том, что их функциональность не всегда соответствует описанной. Проблема состоит в том, что не многие пользуются этими утилитами, еще меньше людей вовлечено в процесс поиска ошибок в этих программах. Поэтому, при использовании некоторых, вновь появившихся, критериев или действий вы можете столкнуться с неожиданным поведением своих правил. Несмотря на возможное существование некоторых проблем, я все же настоятельно рекомендую к использованию эти два инструмента, которые прекрасно работают в большинстве случаев, исключение могут составлять лишь некоторые новые критерии и действия. [[Category:Установка и настройка]] [[Category:Настройка системы]] 6f8241acec7aaf363958dd4c9c88527b47c9d7e1 Настройка NATa 0 72 169 2008-05-29T10:28:17Z OlegA 1 Новая: {{Суперпользователь}} SNAT используется для преобразования сетевых адресов (Source Network Address Translation), т.е. из... wikitext text/x-wiki {{Суперпользователь}} SNAT используется для преобразования сетевых адресов (Source Network Address Translation), т.е. изменение исходящего IP адреса в IP заголовке пакета. Например, это действие можно использовать для предоставления выхода в Интернет другим компьютерам из локальной сети, имея лишь один уникальный IP адрес. Для этого. необходимо включить пересылку пакетов (forwarding) в ядре и затем создать правила, которые будут транслировать исходящие IP адреса нашей локальной сети в реальный внешний адрес. В результате, внешний мир ничего не будет знать о нашей локальной сети, он будет считать, что запросы пришли с нашего брандмауэра. SNAT допускается выполнять только в таблице nat, в цепочке POSTROUTING. Другими словами, только здесь допускается преобразование исходящих адресов. Если первый пакет в соединении подвергся преобразованию исходящего адреса, то все последующие пакеты, из этого же соединения, будут преобразованы автоматически и не пойдут через эту цепочку правил. Для включения этого режима необходимо: 1. Выполнить для разрешения трафика пакетов между интрефейсами: <source lang="bash"> # echo 1 > /proc/sys/net/ipv4/ip_forward </source> Чтобы при загрузке данная опция сохранялась необходимо в файле /etc/sysctl.conf отредактировать <code>net.ipv4.ip_forward = 1</code> 2. Разрешаем FORWARD: <source lang="bash"> # iptables -t filter -A FORWARD -s {LOCAL_IP} -j ACCEPT # iptables -t filter -A FORWARD -d {LOCAL_IP} -j ACCEPT </source> где <code>{LOCAL_IP}</code> - подсеть или локальная IP. 3. Устанавливаем NAT: <source lang="bash"> # iptables -t nat -A POSTROUTING -s {LOCAL_IP} -j SNAT --to-source {EXTERNAL_IP} </source> где <code>{EXTERNAL_IP}</code> - внешняя IP или диапазон внешних IP. Для того, чтобы настройки сохранились при следующем запуске, необходимо выполнить команду: <source lang="bash"> # service iptables save </source> Возможно использовать вместо SNAT - MASQUERADE, но он белее ресурсоёмкий из-за того, что iptables автоматически выбирает внешний интерфейс. Рекомендуется использовать при динамически назначаемом внешнем IP-адресе. ---- Источники: * http://forum.linux.lg.ua/index.php?showtopic=49&pid=363&mode=threaded&show=&st=& [[Category:Установка и настройка]] [[Category:Настройка системы]] c3704922ef75437e0067c05b215cd07fc93fce91 Шейпер 0 73 170 2008-06-17T09:22:21Z OlegA 1 Новая: {{Суперпользователь}} CBQ и HTB - представляют собой систему ограничения трафика по скорости. Это наибол... wikitext text/x-wiki {{Суперпользователь}} CBQ и HTB - представляют собой систему ограничения трафика по скорости. Это наиболее распространённые варианты шейперов. К сожалению, они могут ограничивать только исходящий трафик с компьютера, на котором установлен. HTB - более точнее ограничивает скорость и удобней настраивается. Шейпер работает так: все ИСХОДЯЩИЕ пакеты, т.е. предназначенные для выдачи на любой интерфейс вместо того, чтобы быть отправляться напрямую на интерфейс ставятся в разные очереди. Длина каждой очереди настраивается. Настраиваются также: скорость выдачи данных из очереди (это и есть собственно лимит), длина очереди (размер в байтах), размер пакета, выходящего из очереди (может не совпадать с длиной поступающих пакетов) и многое другое. Пакеты, не помещающиеся в очередь, сбрасываются. Данные из очереди выдаются на интерфейс и далее - к клиенту. Вот как раз каждый файл конфигурации и представляет собой описание одной очереди. Если у Вас есть Ваша собственная домашняя сеть с двумя или более компьютерами и она подключена к интернету, вы точно знаете о тех проблемах с одновременным доступом к сети, которые практически неизбежны при таком подключении. Самой большой и раздражающей проблемой является разделение ширины канала между всеми участниками сети: когда вы пытаетесь работать через ssh с удалённым сервером, а в этот момент ваша wife/брат/друг решает поглядеть новый и очень классный видео клип с Google Video или You``Tube, Ваше соединение замирает и вы можете забыть о комфортабельной работе . В этой маленькой статье я дам вам простое решение этой проблемы, которое позволит вам делать все, что угодно не думая о проблемах разделения трафика! Для начала замечу, что Ваша сеть должна быть подключена к Internet при помощи Linux сервера. Если Вы подключены через какой-то тупой аппаратный маршрутизатор, то Вам сильно не повезло и вы не сможете воспользоваться приведенным примером. Если же Ваш сервер работает под управлением Linux, тогда используйте следеющие ниже инструкции чтобы сделать вашу жизнь проще. Замечу, что у меня интернет подключён к интерфейсу eth0, а локальная сеть - к eth1, канал у меня - симметричное подключение на 512Kbit/s, потому все примеры будут основываться на этих параметрах: 1. Скачайте скрипт htb.init с сайта [http://sourceforge.net/projects/htbinit/ sourceforge]. 2. Распакуйте его и положите в /sbin/htb.init, сменив ему аттрибуты, чтобы сделать его исполнимым: <source lang="bash"> # chmod +x /sbin/htb.init </source> 3. Создайте каталоги для конфигурации и кеша htb.init: <source lang="bash"> # mkdir -p /etc/sysconfig/htb # mkdir -p /var/cache/htb.init </source> 4. Перейдите в каталог коныигурации htb.initи создайте следующие конфигурационные файлы для исходящего трафика: * Файл ‘eth0&#8242; со следующим содержимым: <source lang="bash"> DEFAULT=30 R2Q=100 </source> * Файл ‘eth0-2.root’ со следующим содержимым: <source lang="bash"> # root class containing outgoing bandwidth RATE=512Kbit </source> * Файл ‘eth0-2:10.ssh’ со следующим содержимым: <source lang="bash"> # class for outgoing ssh RATE=256Kbit CEIL=512Kbit LEAF=sfq RULE=*:22 PRIO=10 </source> * И, наконец, файл ‘eth0-2:30.default’ со следующим содержимым: <source lang="bash"> # default class for outgoing traffic RATE=256Kbit CEIL=512Kbit LEAF=sfq PRIO=30 </source> 5. Теперь, создайте набор файлов для управления входящим трафиком: * Файл ‘eth1&#8242; со следующим содержимым: <source lang="bash"> DEFAULT=30 R2Q=100 </source> * Файл ‘eth1-2.root’ со следующим содержимым: <source lang="bash"> # root class containing incoming bandwidth RATE=512Kbit </source> * Файл ‘eth1-2:10.ssh’ со следующим содержимым: <source lang="bash"> # class for incoming ssh RATE=256Kbit CEIL=512Kbit LEAF=sfq RULE=*:22, PRIO=10 </source> * Файл ‘eth1-2:20.mytraf’ для конфигурирования параметров канала на Ваш компьютер: <source lang="bash"> # class for my incoming traffic RATE=256Kbit CEIL=512Kbit LEAF=sfq RULE=192.168.0.2 # this is my ip PRIO=20 </source> * И файл ‘eth1-2:30.default’ для параметров канала по умолчанию для остальных со следующим содержимым: <source lang="bash"> # default class for outgoing traffic RATE=256Kbit CEIL=512Kbit LEAF=sfq PRIO=30 </source> 6. Последний шаг - запуск системы контроля трафика при помощи следующей команды: <source lang="bash"> # /sbin/htb.init start </source> Если все шаги были выполнены правильно и успешно, Вы можете использовать Ваш канал для работы через ssh, для скачивания файлов или для простого сёрфинга… Ваше соединение будет честно делиться между всеми участниками домашней сети. Если вы находитесь в сети один, Вы будете использовать всю ширину канала. Как только ваши соседи захотят что-то скачать, ширина канала будет разделена между вами поровну, но ваша работа будет настолько же комфортной, как и в тот момент, когда Вы были одни. '''''Примечание:''' Если Вы используете трансляцию адреса (NAT), то указание простых правил будет не эффективно. Для ограничения скорости при использовании NAT необходимо создавать правила основанные на маркировке (MARK) в iptables.'' Пример: Маркируем пакеты идущие с 192.168.2.1 на подсеть 89.41.64.0/18 <source lang="bash"> # iptables -t mangle -A PREROUTING -s 192.168.2.1 -d 89.41.64.0/18 -j MARK --set-mark 101 # iptables -t mangle -A PREROUTING -s 192.168.2.1 -d 89.41.64.0/18 -j RETURN </source> В кофигах вместо <code>RULE=192.168.2.1,89.41.64.0/18</code> пишем: <code>MARK=101</code> Не забываем сохранять конфиг iptables: <source lang="bash"> # service iptables save </source> ---- Источник: * http://blog.kovyrin.net/2006/04/06/5min-guide-to-linux-shaping-htb/lang/ru/ [[Category:Установка и настройка]] [[Category:Настройка системы]] 6a3e2ad48670c07be53619c5b18347d46974aac3 Прозрачный прокси 0 74 171 2008-06-17T09:30:35Z OlegA 1 Новая: {{Суперпользователь}} == Что такое прозрачный прокси? == Прозрачный прокси - это HTTP-прокси, который устан... wikitext text/x-wiki {{Суперпользователь}} == Что такое прозрачный прокси? == Прозрачный прокси - это HTTP-прокси, который установлен на рутере и обрабатывает весь HTTP-трафик, причём пользователь не указывает никаких настроек прокси. На рутере происходит редирект. == Установка == Установка: <source lang="bash"> # yum install squid </source> == Настройка прокси == 1. Редактируем офигурационный файл /etc/squid/squid.conf. Здесь затронем, только настройки для прозрачности: <source lang="httpd"> http_port 3128 transparent </source> порт Вы можете указать другой. '''''Примечание:''' Данная конфигурация работает только начиная от версии 2.6 включительно.'' 2. Обязательный пункт в кофигурационном файле /etc/squid/squid.conf: <source lang="httpd"> visible_hostname localhost </source> вместо <code>localhost</code> - любое другое имя. 3. Запускаем сервис: <source lang="bash"> # /sbin/service squid start </source> == Настройка iptables == Для того, чтобы работал прокси, как прозрачный, то необходимо перенаправить весь HTTP-трафик на 3128 порт, или другой, который Вы указали выше. 1. Установим правило: <source lang="bash"> # iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 </source> Вы можете указать диапазон ИП, которым будет применяться перенаправление с флагом <code>-s</code>. Теперь весь трафик который идёт от пользователя на 80-й порт будет обрабатываться прокси. [[Category:Установка и настройка]] [[Category:Настройка системы]] 74fd5dc04ac8fc8a11496f9d50c0ba1b75970524 Цепочка серверов Proxy 0 75 172 2008-06-17T09:35:13Z OlegA 1 Новая: {{Суперпользователь}} Как любой прокси-сервер, squid поддерживает передачу запросов другим прокси-серве... wikitext text/x-wiki {{Суперпользователь}} Как любой прокси-сервер, squid поддерживает передачу запросов другим прокси-серверам. Рассмотрим простую конфигурацию. Нам необходимо перенаправлять все запросы через другого прокси, если нет доступа к ICP порту или используется иной прокси-сервер (не squid). Для этого редактируем /etc/squid/squid.conf: <source lang="httpd"> cache_peer _HOST_ parent _PORT_ 3130 proxy-only no-query default always_direct deny all never_direct allow all </source> * <code>_HOST_</code> - адрес прокси-сервера для передачи запроса * <code>_PORT_</code> - порт прокси-сервера для передачи запроса * <code>proxy-only</code> - запросы не кэшируются на локальном прокси-сервере. * <code>no-query</code> - не производятся запросы на ICP порт. [[Category:Настройка системы]] [[Category:Установка и настройка]] 6f7c013935feaa9e0239444c6e98e17572204d4c Псевдо-мост с Proxy ARP 0 76 173 2008-06-17T09:39:22Z OlegA 1 Новая: {{Суперпользователь}} == Что такое МОСТ? == Мосты (bridges) -- это специальные устройства, которые могут быть ... wikitext text/x-wiki {{Суперпользователь}} == Что такое МОСТ? == Мосты (bridges) -- это специальные устройства, которые могут быть установлены в сети и не требуют предварительной настройки. Сетевой коммутатор (swtch) -- это особый вид многопортового моста. Мост -- это чаще всего двухпортовый коммутатор (switch). На базе Linux может быть построен многопортовый (несколько интерфейсов) мост, по сути -- настоящий коммутатор (switch). Мосты часто применяются для объединения фрагментированных стационарных сетей. Поскольку мост -- это устройство 2-го уровня (Канальный уровень по классификации OCI), который лежит ниже сетевого уровня, где "заправляют" протоколы IP, то ни серверы, ни маршрутизаторы даже не подозревают о его существовании. Это означает, что вы можете блокировать или изменять некоторые пакеты, а так же формировать трафик по своему усмотрению. Еще одно замечательное свойство моста -- в случае выхода из строя, мост может быть заменен отрезком кабеля или сетевым концентратором (hub -- хабом). Одна из отрицательных сторон -- мост может стать причиной большой неразберихи. traceroute его не "видит" и не сможет указать в каком месте теряются пакеты. Так что ничего удивительного, если какая-нибудь организация считает правильным "ничего не менять". == Псевдо-мосты с проксированием ARP == По-умолчанию, обычный мост просто передает пакеты с одного интерфейса на другой в неизменном виде. Он рассматривает только аппаратный адрес пакета, чтобы определить -- в каком направлении нужно передать пакет. Это означает, что Linux может переправлять любой вид трафика, даже тот, который ему не известен, если пакеты имеют аппаратный адрес. Псевдо-мост работает несколько иначе и скорее больше походит на скрытый маршрутизатор, чем на мост, но подобно мосту имеет некоторое влияние на архитектуру сети. Правда это не совсем мост, поскольку пакеты в действительности проходят через ядро и могут быть отфильтрованы, изменены, перенаправлены или направлены по другому маршруту. Настоящий мост в принципе тоже может делать это, но для этого требуется специальное программное обеспечение, например: Ethernet Frame Diverter. Еще одно преимущество псевдо-моста состоит в том, что он не может передавать пакеты протоколов, которые "не понимает" -- что предохраняет сеть от заполнения всяким "мусором". В случае, если вам необходимо переправлять такие пакеты (например, пакеты SAP или Netbeui), то устанавливайте настоящий мост. == ARP и проксирование ARP == Когда некий узел сети желает установить связь с другим узлом, находящимся в том же физическом сегменте сети, то он отсылает пакет ARP-запроса, который, в переводе на человеческий язык, может звучать примерно так: "У кого установлен адрес 10.0.0.1? Сообщите по адресу 10.0.0.7". В ответ на запрос, 10.0.0.1 ответит коротким пакетом "Я здесь! Мой аппаратный адрес xx:xx:xx:xx:xx:xx". Когда 10.0.0.7 получит ответ, он запомнит аппаратный адрес хоста 10.0.0.1 и будет хранить его в кэше некоторое время. При настройке моста мы можем указать ему на необходимость отвечать на ARP-запросы. Это вынудит узлы сети передавать ARP-запросы мосту, который затем обработает их и передаст на соответствующий интерфейс. Таким образом, всякий раз, когда компьютер по одну сторону моста запрашивает аппаратный адрес компьютера, находящегося по другую сторону, то на запрос отвечает мост, как бы говоря "передавай все через меня". Вследствие чего весь трафик попадет на мост и будет передан в нужном направлении. == Реализация == В Linux 2.4/2.5 (а возможно и в 2.2) все это было заменено установкой флага proxy_arp в файловой системе proc. Теперь процедура настройки псевдо-моста выглядит так: 1. Назначить IP-адреса интерфейсам с обоих сторон. 2. Создать маршруты, так чтобы ваша машина знала, какие адреса, по какую сторону находятся. 3. Включить проксирование ARP для обоих интерфейсов, например командами: <source lang="bash"> echo 1 > /proc/sys/net/ipv4/conf/ethL/proxy_arp echo 1 > /proc/sys/net/ipv4/conf/ethR/proxy_arp </source> где символами L и R обозначены интерфейсы по одну и по другую сторону моста ( Left и Right -- "слева" и "справа"). Кроме того, не забывайте включить флаг ip_forwarding! Для истинного моста установка этого флага не требуется. И еще одно обстоятельство, на которое необходимо обратить внимание -- не забывайте очистить кэши arp на компьютерах в сети, которые могут содержать устаревшие сведения и которые больше не являются правильными. На Cisco для этого существует команда clear arp-cache, в Linux -- команда arp -d ip.address. В принципе, вы можете подождать, пока кэши очистятся самостоятельно, за счет истечения срока хранения записей, но это может занять довольно продолжительное время. Вы можете ускорить этот процесс, используя замечательный инструмент arping, который во многих дистрибутивах является частью пакета iputils. Утилитой arping вы может отослать незапрошенные arp-сообщения, чтобы модифицировать удаленные кэши arp. == Пример == Пусть: <code>x.x.x.96/28</code> - выделенная подсеть, которую нужно распределить по машинам в локальной сети. <code>x.x.x.97</code> - IP внешнего шлюза. Требуется поставить между шлюзом и сетью фаервол, с одним адресом на двух интерфейсах <code>x.x.x.98</code>, транслируя ARP трафик используя "Proxy ARP". <code>x.x.x.99 ... x.x.x.110) --- (eth1, x.x.x.98 | eth0, x.x.x.98) --- (x.x.x.97)</code> Удаляем маршруты созданные по умолчанию. <source lang="bash"> # ip route del x.x.x.96/28 dev eth0 # ip route del x.x.x.96/28 dev eth1 </source> Пакеты для x.x.x.97 пускаем через eth0, а для x.x.x.96/28 через eth1 <source lang="bash"> # ip route add x.x.x.97 dev eth0 # ip route add x.x.x.96/28 dev eth1 </source> Включаем Proxy ARP <source lang="bash"> # echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp # echo 1 > /proc/sys/net/ipv4/conf/eth1/proxy_arp </source> ---- Источники: * http://gazette.linux.ru.net/rus/articles/lartc/x2879.html [[Category:Установка и настройка]] [[Category:Настройка системы]] 07903d3c4c4232a9d8678a9db2eb4e3c8bea2f30 Графики MRTG 0 77 174 2008-06-17T09:50:20Z OlegA 1 Новая: {{Суперпользователь}} == Что такое MRTG? == MRTG - это Multi Router Traffic Grapher, сервис, позволяющий посредством проток... wikitext text/x-wiki {{Суперпользователь}} == Что такое MRTG? == MRTG - это Multi Router Traffic Grapher, сервис, позволяющий посредством протокола SNMP получать из нескольких устройств информацию, и отображать в окне вашего броузера графики загруженности канала (входящий трафик, исходящий, максимальный, средний) с шагом в минуты, часы, дни и за год. Пример работы программы Вы можете увидеть на рисунке. Там показаны два графика - за неделю и за месяц. Соответственно с шагом в 30 минут и два часа. == Установка == <source lang="bash"> # yum install mrtg net-snmp net-snmp-utils net-snmp-libs </source> == Кофигурация == 1. Редактируем <code>/etc/snmp/snmpd.conf</code> <source lang="httpd"> com2sec local 127.0.0.1/32 public group MyROGroup v1 local group MyROGroup v2c local group MyROGroup usm local view all included .1 80 access MyROGroup "" any noauth exact all none none syslocation MyLocation syscontact Me <me@somewhere.org> </source> 2. Перезапускаем snmpd: <source lang="bash"> # /sbin/service snmpd restart </source> 3. Проверяем работоспособность snmpd: <source lang="bash"> # snmpwalk -v 1 -c public localhost system </source> должна отобразится вся информация о системе. 4. Генерируем дефолтовую кофигурацию MRTG. <source lang="bash"> # /usr/bin/cfgmaker \ --output=/etc/mrtg/mrtg.cfg \ --global "WorkDir: /var/www/mrtg" \ --global "Options[_]: bits,growright" \ public@localhost </source> 5. MRTG теперь будет рисовать каждые 5 минут графики всех сетевых интерфейсов. 6. Создадим индексовую страницу, для нормального отображения и доступа по http://localhost/mrtg/ <source lang="bash"> # indexmaker /etc/mrtg/mrtg.cfg --output=/var/www/mrtg/index.html </source> 7. По умолчанию в /etc/cron.d добавлено задание mrtg, которое выполняется каждые 5 минут. 8. Для просмотра статистики достаточно зайти по адресу: http://localhost/mrtg/ (по умолчанию доступ открыт только для localhost (127.0.0.1). Для настройки доступа необходимо с корректировать <code>/etc/httpd/conf.d/mrtg.conf</code> и перегрузить настройки httpd <source lang="bash"> # service httpd reload </source> Данная конфигурация отображает графики только сетевых интерфейсов. Далее будут приведены несколько примеров для <code>mrtg.cfg</code>. Не забудьте после каждого изменения <code>mrtg.cfg</code> выполнять 6-ой пункт (indexmaker) == Примеры кофигураций == 1. Загрузка процессора: <pre> LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt Target[localhost.cpu]:ssCpuRawUser.0&ssCpuRawUser.0:public@localhost+ ssCpuRawSystem.0&ssCpuRawSystem.0:public@localhost+ ssCpuRawNice.0&ssCpuRawNice.0:public@localhost RouterUptime[localhost.cpu]: public@localhost MaxBytes[localhost.cpu]: 100 Title[localhost.cpu]: CPU Load PageTop[localhost.cpu]: <H1>Active CPU Load %</H1> Unscaled[localhost.cpu]: ymwd ShortLegend[localhost.cpu]: % YLegend[localhost.cpu]: CPU Utilization Legend1[localhost.cpu]: Active CPU in % (Load) Legend2[localhost.cpu]: Legend3[localhost.cpu]: Legend4[localhost.cpu]: LegendI[localhost.cpu]: Active LegendO[localhost.cpu]: Options[localhost.cpu]: growright,nopercent,unknaszero,pngdate </pre> 2. Физическая память: <pre> LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt Target[localhost.mem]: memAvailReal.0&memTotalReal.0:public@localhost * 1024 RouterUptime[localhost.mem]: public@localhost PageTop[localhost.mem]: <H1>RAM Memory</H1> Options[localhost.mem]: nopercent,growright,gauge,pngdate,unknaszero Title[localhost.mem]: RAM Memory MaxBytes[localhost.mem]: 1000000000 kilo[localhost.mem]: 1024 YLegend[localhost.mem]: bytes ShortLegend[localhost.mem]: bytes LegendI[localhost.mem]: Free RAM Memory: LegendO[localhost.mem]: Total RAM Memory: Legend1[localhost.mem]: Free memory, not including swap, in bytes Legend2[localhost.mem]: Total memory, not including swap, in bytes </pre> 3. Буфер / Кэш: <pre> LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt Target[localhost.cachebuf]: memBuffer.0&memCached.0:public@localhost * 1024 RouterUptime[localhost.cachebuf]: public@localhost PageTop[localhost.cachebuf]: <H1>Buffer/Cached Memory</H1> Options[localhost.cachebuf]: nopercent,growright,gauge,pngdate,unknaszero Title[localhost.cachebuf]: Buffer/Cached Memor MaxBytes[localhost.cachebuf]: 1000000000 kilo[localhost.cachebuf]: 1024 YLegend[localhost.cachebuf]: bytes ShortLegend[localhost.cachebuf]: bytes LegendI[localhost.cachebuf]: Used Buffer Memory: LegendO[localhost.cachebuf]: Used Cached Memory: Legend1[localhost.cachebuf]: Buffer memory, in bytes Legend2[localhost.cachebuf]: Cache memory, in bytes </pre> 4. Своп: <pre> LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt Target[localhost.swap]: memAvailSwap.0&memTotalSwap.0:public@localhost * 1024 RouterUptime[localhost.swap]: public@localhost PageTop[localhost.swap]: <H1>Swap Memory</H1> Options[localhost.swap]: nopercent,growright,gauge,pngdate,unknaszero Title[localhost.swap]: Swap Memory MaxBytes[localhost.swap]: 1000000000 kilo[localhost.swap]: 1024 YLegend[localhost.swap]: bytes ShortLegend[localhost.swap]: bytes LegendI[localhost.swap]: Free Swap Memory: LegendO[localhost.swap]: Total Swap Memory: Legend1[localhost.swap]: Swap memory avail, in bytes Legend2[localhost.swap]: Swap memory totla, in bytes </pre> 5. Процентное соотношение свободного места в памяти: <pre> LoadMIBs: /usr/share/snmp/mibs/UCD-SNMP-MIB.txt Title[localhost.mempercent]: Percentage Free Memory RouterUptime[localhost.mempercent]: public@localhost PageTop[localhost.mempercent]: <H1>Percentage Free Memory</H1> Target[localhost.mempercent]: ( memAvailReal.0&memAvailSwap.0:public@localhost ) * 100 / ( memTotalReal.0&memTotalSwap.0:public@localhost ) options[localhost.mempercent]: growright,gauge,nopercent,pngdate,unknaszero Unscaled[localhost.mempercent]: ymwd MaxBytes[localhost.mempercent]: 100 YLegend[localhost.mempercent]: Memory % ShortLegend[localhost.mempercent]: Percent LegendI[localhost.mempercent]: Free RAM LegendO[localhost.mempercent]: Free Swap Legend1[localhost.mempercent]: Percentage Free RAM Memory Legend2[localhost.mempercent]: Percentage Free Swap Memory </pre> 6. Свободное место партиции: Для этого необходимо создать bash-скрипт в /etc/mrtg c именем: diskusage.sh: <source lang="bash"> #!/bin/sh usage=$[`/bin/df -k | grep $1 | awk '{print $3}'`*1024] free=$[`/bin/df -k | grep $1 | awk '{print $4}'`*1024] echo $free echo $[$usage+$free] /usr/bin/uptime | awk '{print $3 $4 $5}' echo $1 </source> Конфигурация mrtg: <pre> Target[localhost.fmd-home]: `/etc/mrtg/diskusage.sh /dev/sda1` RouterUptime[localhost.fmd-home]: public@localhost Title[localhost.fmd-home]: Disk Usage /home PageTop[localhost.fmd-home]: <h1>Disk Usage /home</h1> Options[localhost.fmd-home]: nopercent,growright,gauge,pngdate MaxBytes[localhost.fmd-home]: 160000000000 kilo[localhost.fmd-home]: 1024 YLegend[localhost.fmd-home]: bytes ShortLegend[localhost.fmd-home]: bytes LegendI[localhost.fmd-home]: Free LegendO[localhost.fmd-home]: Total Legend1[localhost.fmd-home]: Disk Free Size in Bytes Legend2[localhost.fmd-home]: Disk Total Size in Bytes </pre> где <code>/dev/sda1</code> - партиция. 7. Если lm_sensors правильно настроен и выдается по команде <code>sensors</code> правильные данные, то можно использовать следующую конфигурацию: <pre> Title[localhost.temp]: Temperature on box PageTop[localhost.temp]: <H1>Temperature</H1> Target[localhost.temp]: `/usr/bin/sensors | /usr/bin/awk '/^M\/B Temp:/{ sub(/\+/,"",$3); print $3 }/^CPU Temp:/{ sub(/\+/,"",$3); print $3 }'` Options[localhost.temp]: noinfo,gauge,growright,integer,nopercent,pngdate,unknaszero Unscaled[localhost.temp]:dwmy MaxBytes[localhost.temp]: 80 Kilo[localhost.temp]:1000 YLegend[localhost.temp]: Temperature ShortLegend[localhost.temp]: C Legend1[localhost.temp]: M/B Temp Legend2[localhost.temp]: CPU Temp LegendI[localhost.temp]: M/B Temp LegendO[localhost.temp]: CPU Temp Legend3[localhost.temp]: M/B Legend4[localhost.temp]: CPU </pre> 8. Если Ваш жесткий диск имеет датчик температуры, то есть возможность и его наблюдать: <pre> Title[localhost.hddtemp]: Temperature on HDD PageTop[localhost.hddtemp]: <H1>Temperature HDD</H1> Target[localhost.hddtemp]: `nc localhost 7634|cut -d \| -f 4;nc localhost 7634|cut -d \| -f 4` Options[localhost.hddtemp]: noinfo,gauge,growright,integer,nopercent,pngdate,unknaszero Unscaled[localhost.hddtemp]:dwmy MaxBytes[localhost.hddtemp]: 60 Kilo[localhost.hddtemp]:1000 YLegend[localhost.hddtemp]: Temperature ShortLegend[localhost.hddtemp]: C Legend1[localhost.hddtemp]: HDD Temp Legend2[localhost.hddtemp]: Legend3[localhost.hddtemp]: Legend4[localhost.hddtemp]: LegendI[localhost.hddtemp]: HDD Temp LegendO[localhost.hddtemp]: </pre> [[Category:Установка и настройка]] [[Category:Настройка системы]] 0e2da0603ac730475b676bf972231c01348f48b6 Настройка BIND версий 8 и 9 0 78 175 2008-06-18T07:28:37Z OlegA 1 Новая: {{Суперпользователь}} == Информация == Named из пакета BIND 8-ой или 9-ой версий в своей настройке и управлении... wikitext text/x-wiki {{Суперпользователь}} == Информация == Named из пакета BIND 8-ой или 9-ой версий в своей настройке и управлении имеет ряд отличий от версии 4. Во-первых, файл конфигурации носит название named.conf и располагается по умолчанию либо в /etc (версия 9), либо в /etc/namedb (версия 8). Во-вторых, у named отсутствует хранимый на диске cache, описание корневой зоны вынесено в отдельный файл, и его нужно прописывать в настройках named. В-третьих, стало возможным дистанционно управлять named. При запуске программа named читает файл named.conf и таким образом настраивается. Ранее были разобраны формат, структура и содержание файла настройки программы named версий 4.х. Учитывая тот факт, что "четверка" - это уже история, сосредоточимся теперь на файле настройки более свежих версий named. Основные изменения, которые произошли с named, касаются повышения устойчивости сервера к различного рода атакам, что и отразилось в настройках. Администратор сервера получил возможность управлять копированием зон, обслуживанием запросов на разрешение имен ip-адресами (в данном случае слово "разрешение" употребляется в смысле "установка соответствия", а не в смысле "разрешить что-то делать"). Собственно, любая рекомендация перехода на новые версии named аргументируется более высокой защищенностью программы. Внешним наиболее заметным отличием файла настройки версий 8.х и 9.х стал иной синтаксис. Он стал C-подобным (если бы новую версию программы начали делать сейчас, а не в 1997 году, то файл настройки получил бы наверное XML-синтаксис J). Рассматривать все варианты конструкций в файле настройки named.conf, видимо не имеет смысла, а потому сосредоточимся только на наиболее часто встречающихся вариантах и наиболее привлекательных особенностях. При этом многие вопросы, связанные с безопасностью, динамическим обновлением и другими новыми возможностями оставим для отдельного обсуждения. Прежде, чем приступить к обсуждению named.conf следует обратить внимание на место его расположения в файловой системе. Это важно, т.к. при установке named из портов (ports, т.е. установки двоичных, откомпилированных под определенную платформу версий named утилитами (скриптами) установки) место расположения этого файла может отличаться от того, которое выбирается по умолчанию, при установке из исходных кодов. По умолчанию named.conf (установка из исходных кодов) располагается в каталоге /etc/namedb/ (версия 8) или /etc (версия 9). Как любая прикладная программа, named позволяет переопределить место положение своего файла настройки при помощи флага b или c в командной строке при своем запуске: <source lang="bash"> # named -c /etc/named.conf </source> Если Вы работаете с Unix-системой, то нужно внимательно посмотреть файлы конфигурации скриптов начальной загрузки и сами скрипты (обычно что-то типа rc.*, в разных клонах могут быть расположены в различных местах, но корнем пути к которым (местам), обычно, является каталог <code>/etc</code>, чтобы убедиться, что установки умолчания для named не переопределены. И последнее замечание прежде, чем приступить к описанию примеров. Во всех примерах BIND 8-9 используются адреса, так называемых, немаршрутизируемых сетей. По этой причине будьте внимательны при копировании отдельных фрагментов примеров, если, конечно, Вы сочтете такое копирование полезным J. == Кеширующий сервер (Cache server) == Как уже отмечалось ранее (см. "Типы серверов доменных имен") это сервер, который не отвечает ни за одну из зон, но используется для исполнения запросов resolver-ов. Он выполняет функции локального сервера доменных имен, т.е. выполняет рекурсивные запросы от прикладных программ к системе DNS. При этом в его кэш накапливается информация о соответствиях между доменными именами и IP-адресами, что позволяет существенно повысить скорость обработки запросов и разгрузить другие серверы доменных имен. В соответствии со своими функциями кэширующий сервер будет иметь всего три файла настройки: файл named.conf, файл с описанием серверов обслуживающих корневую зону и файл описания обратной зоны для зоны 0.0.127.in-addr.arpa. Формат, структуру и содержание двух последних файлов обсудим позже, а сейчас сосредоточимся на named.conf. Возьмем вариант из руководства по администрированию BIND версии 9: <source lang="cpp"> // Two corporate subnets we wish to allow queries from. acl "corpnets" {192.168.4.0/24; 192.168.7.0/24 }; options { directory "/etc/namedb"; // Working directory pid-file "named.pid"; // Put pid file in working allow-query {"corpnets";}; }; // Root server hints zone "." { type hint; file "root.hint"; }; // Provide a reverse mapping for the loopback address 127.0.0.1 zone "0.0.127.in-addr.arpa" { type master; file "0.0.127.in-addr.arpa"; notify no; }; </source> В данном примере описана настройка кэширующего сервера для двух подсетей. Они перечислены в access control list (директива acl) и названы как "corpnet". Теперь в любом месте файла настройки можно ссылаться на этот список просто как на "corpnet", что, собственно и сделано в директиве options. В директиве "options" вначале указан рабочий каталог named (опция directory). В нем располагаются все файлы, которые программа использует при своей работе, в том числе и файлы описания зон. Эта опция аналогична команде directory из файла настроек bind версий 4.х. Затем опция pid-file указывает имя файла в которые будет помещен идентификатор процесса named. Этот файл будет расположен в рабочем каталоге named (т.е. <code>/etc/namedb)</code> Последняя опция директивы options - allow-query. Она определяет список IP-адресов, для которых разрешено обращаться с запросами к серверу. Другие хосты обслуживаться данным сервером доменных имен не будут. Еще раз обращаем внимание на то, что любые другие хосты с любыми запросами не будут обслуживаться, т.е. не будут обслуживаться как рекурсивные, так и нерекурсивные запросы. Директива "zone" позволяет описать местоположение и опции для обслуживания зоны. Две зоны обычно всегда описывают. Это зона "." (корневая зона) и обратная зона для адреса <code>127.0.0.1</code>. Описание зоны "." (корня дерева доменных имен) необходимо для того, чтобы сервер мог обращаться к "корневым" серверам, с запросами на получение справки о том, где искать "ответственного" за зону, из которой клиент хочет получить информацию (IP-адрес или доменное имя). По этой причине тип зоны определен как "hint", т.е. в буквальном переводе - "справочный", "ссылочный", "наводка на", "намек на", "совет" и т.п.. Само описание "корневых" серверов находится в файле root.hint. Файл поставляется вместе с дистрибутивом, но администратор должен следить за обновлениями этого файла. О том, как это делать мы рассмотрели подробно при описании настроек BIND 4 (cache файл). Описание обратной зоны для <code>127.0.0.1</code> необходимо для того, чтобы можно было локально разрешать (получать соответствие между IP-адресом и именем) при обращениях с реверсивными запросами к зоне 0.0.127.in-addr.arpa. О важности реверсивных запросов будет сказано в разделе посвященном описанию обратной зоны для маршрутизируемой сети (подсети). Здесь мы только укажем, что описать данную зону нужно в целях соблюдения единообразия, отладки и аккуратной работы сервиса DNS. Для зоны 0.0.127.in-addr.arpa наш сервер будет первичным (primary), поэтому его тип опцией type будет определен как master. В самом деле за эту зону отвечает только наш сервер. Адрес <code>127.0.0.1</code> за пределы хоста не маршрутизируется, поэтому у других серверов будет своя зона 0.0.127.in-addr.arpa. Обратите внимание, что речь идет о кэширующем сервере, а определяем мы его и как master для одной из зон. В данном случае термин "кэширующий" говорит о том, что наш сервер не поддерживает ни одну из реально существующих зон, т.е. ему не делегировано прав на такое обслуживание. Описание обратной зоны для 0.0.127.in-addr.arpa находится в файле "0.0.127.in-addr.arpa". Вообще говоря, файл может иметь любое имя, которое допускается файловой системой. На самом деле в документации по BIND 9.x для описания зоны используется имя "localhost.rev". Изменить имя в примере было нужно для того, чтобы отразить часто встречающуюся практику именования файлов описания зон именами самих зон. Еще раз подчеркнем, что имя может быть любым допустимым в контексте конкретной файловой системы именем. Последняя опция "notify" позволяет реализовать режим оповещения об изменениях другие сервера, которые поддерживают данную зону, обычно, вторичные (резервные, secondary, slave). Для нашей обратной зоны это в принципе не нужно, поэтому опция установлена в значение "no". Если же говорить вообще, то не все серверы поддерживают этот режим. Общая практика заключается в том, что обновления "расползаются" по сети в соответствии с параметрами записи SOA из описания зоны. == Официальный (Authoritative) сервер зоны == В руководстве по BIND данная конфигурация обозначена как "Authoritative-only server". Смысл ее заключается в том, что демонстрируется настройка сервера, который обслуживает запросы от любого хоста Сети, но только к той зоне, за которую он официально отвечает. В терминологии BIND 4.х такой сервер именовался как "primary" для зоны, а в терминологии BIND 8.х- 9.х он именуется как "master". Его файл настройки будет выглядеть следующем образом: <source lang="cpp"> options { directory "/etc/namedb"; // Working directory pid-file "named.pid"; // Put pid file in working allow-query { any; }; // This is default recursion no; // Do not provide recursion service }; zone "." { type hint; file "root.hint"; }; zone "0.0.127.in-addr.arpa" { type master; file "0.0.127.in-addr.arpa"; notify no; }; zone "example.com" { type master; file "example.com"; allow-transfer { 192.168.4.14; 192.168.5.53; }; }; </source> Сначала обратим внимание на отличие в описании опций директивы "options". Во-первых, с запросами к данному серверу позволено обращаться любому хосту Сети, что логично, т.к. никто другой кроме официального сервера в полном объеме за данную зону не отвечает (опция "allow-query"). Есть, конечно, вспомогательные сервера, но они только дублируют master сервер. Вносить изменения в описание зоны можно только на primary master сервере. Именно поэтому при выходе из строя primary master сервера время обслуживания запросов вспомогательными серверами ограничено. Предполагается, что при отказе primary master данные вспомогательных серверов не будут соответствовать исходному описанию зоны, а потому обслуживание запросов лучше прекратить. Во-вторых, данный сервер не обслуживает запросы рекурсивно. Он только отвечает на запросы к своей зоне (опция "recursion"). Последнее означает, что в отличии от кэширующего сервера, который принимает запросы от клиентов (resolver-ов), опрашивает серверы доменных имен и потом отвечает клиентам, наш сервер запросы клиентов, которые не касаются зоны его ответственности обслуживать не будет. Описание корневых (root) серверов и обратной зоны для <code>127.0.0.1</code> такое же, как и для кэширующего сервера. При описании зоны ответственности (директива "zone "example.com") в качестве первого параметра указано имя зоны ("example.com") в фигурных скобках определены опции: тип сервера - master, т.е. официальный сервер зоны; файл описания зоны - file "example.com"; список вспомогательных серверов - "allow-transfer { 192.168.4.14; 192.168.5.53 };". Собственно, опция "allow-transfer" задает список серверов, которым разрешено копировать зону. Официальными вспомогательными серверами они станут только в том случае, если они таковыми были определены в заявке (для доменов второго уровня - корпоративных доменов, например), либо приписаны таковыми при делегировании зоны более глубокого уровня. Если не установить ограничения на копирование зоны, или указать "any", то любой сервер может скопировать зону, и не только сервер. Из соображений безопасности настоятельно рекомендуется прописывать адреса серверов, которым можно копировать зону. == Вспомогательный сервер (secondary, slave) == В документации по BIND описание master сервера доменных имен и slave сервера совпадают. Но методически правильнее их разнести, что здесь и сделано. <source lang="cpp"> options { directory "/etc/namedb"; // Working directory pid-file "named.pid"; // Put pid file in working allow-query { any; }; // This is default recursion no; // Do not provide recursion service }; zone "." { type hint; file "root.hint"; }; zone "0.0.127.in-addr.arpa" { type master; file "0.0.127.in-addr.arpa"; notify no; }; zone "eng.example.com" { type slave; file "eng.example.com"; masters { 192.168.4.12;}; }; </source> То, что мы имеет дело с вспомогательным сервером для зоны "eng.example.com" определено в соответствующей директиве "zone". В качестве типа сервера (type) указано значение "slave", что и определяет сервер как вспомогательный. В опции "masters" определяется список официальных серверов, с которых вспомогательный сервер может списывать зону в файл "eng.example.com". В данном случае указан только один - <code>192.168.4.12</code>. Мы рассмотрели типовые настройки файла конфигурации named.Для того, чтобы двигаться дальше, нужно рассмотреть файлы описания зон. ---- Источники: * http://info.nic.ru/st/8/out_259.shtml [[Category:Установка и настройка]] [[Category:Настройка системы]] 19e0fe1ab331b551bc14ea8ff175f9914b03105b IPIP Тунель 0 79 176 2008-06-18T07:32:42Z OlegA 1 Новая: {{Суперпользователь}} Иногда бывают ситуации, когда необходимо соединить удаленные Unix-сервера тунеле... wikitext text/x-wiki {{Суперпользователь}} Иногда бывают ситуации, когда необходимо соединить удаленные Unix-сервера тунелем для того, чтобы предоставить локальным пользователям определенные сервисы из удаленной сети или просто для того, чтобы получить доступ к удаленной внутренней сети. Предположим, что у нас 2 сервера: * Server1: ** ОС: Linux ** Сетевой интерфейс: eth0 ** IP: 100.100.100.100 * Server2: ** ОС: Linux ** Сетевой интерфейс: eth1 ** IP: 200.200.200.200 Нам необходимо получить IPv4 over IPv4 тунель со следующими параметрами между указанными серверами: * Server1: 10.0.0.1 / 255.255.255.252 * Server2: 10.0.0.2 / 255.255.255.252 Для настройки описанной конфигурации на Server1 нам нужно выполнить следующие шаги: 1. Создадим ipip-тунельный интерфейс: <source lang="bash"> # ip tunnel add tun0 mode ipip \ > remote 200.200.200.200 local 100.100.100.100 dev eth0 </source> 2. Установим IP-адреса: <source lang="bash"> # ifconfig tun0 10.0.0.1 netmask 255.255.255.252 \ > pointopoint 10.0.0.2 </source> 3. Поднимем интерфейс: <source lang="bash"> # ifconfig tun0 up </source> Теперь на Server1 мы имеем следующий интерфейс: <source lang="bash"> # ifconfig tun0 </source> Соответственно делаем настройки для Server2: 1. Создадим ipip-тунельный интерфейс: <source lang="bash"> # ip tunnel add tun0 mode ipip \ > remote 100.100.100.100 local 200.200.200.200 dev eth1 </source> 2. Установим IP-адреса: <source lang="bash"> # ifconfig tun0 10.0.0.2 netmask 255.255.255.252 \ > pointopoint 10.0.0.1 </source> 3. Поднимем интерфейс: <source lang="bash"> # ifconfig tun0 up </source> Теперь на Server1 мы имеем следующий интерфейс: <source lang="bash"> # ifconfig tun0 </source> Проверяем на Server1: <source lang="bash"> # ping 10.0.0.2 </source> Проверяем на Server2: <source lang="bash"> # ping 10.0.0.1 </source> Пакеты ходят через IPIP тунель. Для объединения разных сетей необходимо построить таблицу рутирования и разрешить ядру перебрасывать пакеты между интерфейсами. '''''Примечание:''' При использовании тунеля через firewall необходимо разрешить принимать протокол IPIP (94):'' * ''для Server1'' <source lang="bash"> # iptables -A INPUT -p ipip -s 100.100.100.100 -j ACCEPT </source> * ''для Server2'' <source lang="bash"> # iptables -A INPUT -p ipip -s 200.200.200.200 -j ACCEPT </source> ---- Источники: * http://blog.kovyrin.net/2006/03/17/how-to-create-ip-ip-tunnel-between-freebsd-and-linux/ [[Category:Установка и настройка]] [[Category:Настройка системы]] 12a65ec922a84315abf344b85710c5f7d128a1c8 Синхронизация времени (NTP) 0 80 177 2008-06-18T07:36:08Z OlegA 1 Новая: {{Суперпользователь}} == Введение == '''Network Time Protocol''' ('''NTP''') — сетевой протокол для синхронизации внутре... wikitext text/x-wiki {{Суперпользователь}} == Введение == '''Network Time Protocol''' ('''NTP''') — сетевой протокол для синхронизации внутренних часов компьютера с использованием сетей с переменной латентностью, основанных на коммутации пакетов. Хотя традиционно NTP использует для своей работы протокол UDP, он также способен работать и поверх TCP. Система NTP чрезвычайно устойчива к изменениям латентности среды передачи. NTP использует алгоритм Марзулло (предложен Кейтом Марзулло (Keith Marzullo) из Университета Калифорнии, Сан-Диего), включая такую особенность, как учёт времени передачи. В версии 4 способен достигать точности 10 мс (1/100 с) при работе через Интернет, и до 200 микросекунд (1/5000 с) и лучше внутри локальных сетей. NTP — один из старейших используемых протоколов. NTP разработан Дэвидом Л. Миллсом (David L. Mills) из университета Дэлавера и в настоящее время продолжает совершенствование. Текущая версия — NTP 4. Демон NTP — программа пользовательского уровня, работает постоянно. NTP использует иерархическую систему «часовых уровней», уровень 1 синхронизован с высокоточными часами, например, система GPS или эталоны времени. NTP уровень 2 синхронизируется с одной из машин уровня 1, и так далее. Время, представляется в системе NTP 64-битным числом, состоящим из 32-битного счётчика секунд и 32-битного счётчика долей секунды, позволяя передавать время в диапазоне 2<sup>32</sup> секунд, с теоретической точностью 2<sup>-32</sup> секунды. Поскольку шкала времени в NTP повторяется каждые 2<sup>32</sup> секунды (136 лет), получатель должен хотя бы примерно знать текущее время (с точностью 50 лет). Более простая реализация этого алгоритма известна как SNTP — простой синхронизирующий сетевой протокол. Используется во встраиваемых системах и устройствах, не требующих высокой точности. Подробная реализация протокола и системы в целом описана в: * RFC 778 * RFC 891 * RFC 956 * RFC 958 * RFC 1305 * RFC 2030 NTP не следует путать с daytime protocol RFC 867 или time protocol RFC 868. == Настройка для *nix-систем == Для корректной работы синхронизации времени нам понадобится пакет ntp. 1. Для установки выполняем (если еще не установлено): <source lang="bash"> # yum install ntp </source> 2. Конфигурируем /etc/ntp.conf: Ищем строки начинающиеся с server и меняем данные на: <source lang="httpd"> server md.pool.ntp.org server 0.europe.pool.ntp.org server 1.europe.pool.ntp.org server 2.europe.pool.ntp.org server 3.europe.pool.ntp.org </source> 3. Запускаем или перезапускам сервис ntpd: <source lang="bash"> # service ntpd restart </source> Теперь Ваши системные часы будут всегда точные. == Настройка для Win-систем == Для Windows систем необходимо выполнить следующую команду: <source lang="cmd"> net time /setsntp:md.pool.ntp.org </source> [[Category:Установка и настройка]] [[Category:Настройка системы]] a94ce46506dac0804b2fd6d2524297a34ee4f8ed Справка:Справка по редактированию 12 18 178 107 2008-06-18T07:45:01Z OlegA 1 wikitext text/x-wiki == Редактирование == * [[mediawikiwiki:Help:Editing pages/ru|Редактирование страниц]] * [[mediawikiwiki:Help:Starting a new page/ru|Создание новой страницы]] * [[mediawikiwiki:Help:Formatting/ru|Форматирование]] * [[mediawikiwiki:Help:Links/ru|Ссылки]] === Расширенное редактирование === * [[mediawikiwiki:Help:Images/ru|Изображения]] * [[mediawikiwiki:Help:Tables/ru|Таблицы]] * [[mediawikiwiki:Help:Managing files/ru|Управление файлами]] * [[mediawikiwiki:Help:Moving a page/ru|Перемещение (переименование) страниц]] * [[mediawikiwiki:Help:Redirects/ru|Перенаправления]] * [[mediawikiwiki:Help:Deleting a page/ru|Удаление страниц]] * [[mediawikiwiki:Help:Variables/ru|Переменные]] * [[mediawikiwiki:Help:Namespaces/ru|Пространства имён]] * [[mediawikiwiki:Help:Interwiki linking/ru|Интервики-ссылки]] [[Category:Справка|Справка по редактированию]] f3d46ea3385ad880bb7ecacedf8651ccc95d5cd6 Установка и настройка драйвера для видео-карт фирмы ATI 0 81 179 2008-06-30T12:03:56Z OlegA 1 Новая: {{Суперпользователь}} '''Внимание:''' далее описаны 2 возможные процедуры установки драйвера. Используй... wikitext text/x-wiki {{Суперпользователь}} '''Внимание:''' далее описаны 2 возможные процедуры установки драйвера. Используйте только одну из них (они взаимоисключаемы). Процедура 2 - использование пакетов от livna, более проста и рекомендуема к применению. == Проприетарные драйвера == [[Установка проприетарных драйверов от компании ATI (AMD)]]. == Установка fglrx от livna репозитория == 1. Добавление репозитория livna, если ещё не добавлен. 2. Устанавливаем xorg-x11-drv-fglrx и kmod-fglrx. <source lang="bash"> # yum install xorg-x11-drv-fglrx kmod-fglrx </source> Если при обновлении выдает сообщение о конфликтах версий kmod-fglrx, то перед запуском предыдущей строки, удалите предыдущую версию kmod-fglrx, а затем запустите установку: <source lang="bash"> # rpm --nodeps -e kmod-fglrx # yum install kmod-fglrx </source> 3. Запускаем в консоли: <source lang="bash"> # init 3 </source> 4. Запускаем в косоли: <source lang="bash"> # fglrx-config-display enable </source> 5. Редактируем /etc/X11/xorg.conf, проверяем наличие следующих строк, если их нет, то добавляем: <source lang="httpd"> Section "Device" Driver "fglrx" EndSection Section "Extensions" Option "Composite" "Disable" EndSection Section "ServerFlags" Option "AIGLX" "off" EndSection </source> Если вы используете драйвер новее 8.42.3 то последние две секции (''Extensions'' и ''Server``Flags'') менять не нужно. Версия драйвера 8.42 и выше поддерживает AIGLX. Если чипсет компании Intel, то после строчки <code>Driver "fglrx"</code> добавляем <code>Option "~UseInternalAGPGART" "no"</code> в секции ''Section "Device"'' 6. Запускаем X в косоли: <source lang="bash"> # init 5 </source> 7. Проверяем работоспособность драйвера: <source lang="bash"> # fglrxinfo </source> и смотрим, чтобы "OpenGL vendor string" был "ATI Technologies Inc." 8. Запускаем <source lang="bash"> # glxinfo |grep direct </source> и смотрим, чтобы было: "direct rendering: Yes" 9. Запускаем <source lang="bash"> # fgl_glxgears </source> и смотрим, как шустро вращается кубик + считаем FPS. '''''Примечание:''''' Если при попытке подгрузить модуль fglrx выдаёт ошибку типа: <source lang="bash"> # modprobe fglrx FATAL: Error inserting fglrx (/lib/modules/2.6.11.231005/misc/fglrx.ko): Operation not permitted </source> значит ещё подгружен модуль radeon. Выгрузите его: <source lang="bash"> # modprobe -r radeon </source> а затем, снова загрузите fglrx: <source lang="bash"> # modprobe fglrx </source> Если что-то не получается - напишите в тему поддержки, в форуме или чате. При этом желательно указывать вывод следующих команд: <source lang="bash"> $ grep Driver /etc/X11/xorg.conf $ egrep EE\|WW /var/log/Xorg.0.log $ ldd /usr/bin/glxinfo $ LIBGL_DEBUG=verbose glxinfo |head -n 20 $ egrep fglrx\|radeon /proc/modules $ dmesg|egrep fglrx\|radeon </source> [[Category:Драйвера]] 2b7e44b3380a6ca28f6b84bc8918cb56dc614b3c 180 179 2008-06-30T12:05:11Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} '''Внимание:''' далее описаны 2 возможные процедуры установки драйвера. Используйте только одну из них (они взаимоисключаемы). Процедура 2 - использование пакетов от livna, более проста и рекомендуема к применению. == Проприетарные драйвера == [[Установка проприетарных драйверов от компании ATI (AMD)]]. == Установка fglrx от livna репозитория == 1. Добавление репозитория livna, если ещё не добавлен. 2. Устанавливаем xorg-x11-drv-fglrx и kmod-fglrx. <source lang="bash"> # yum install xorg-x11-drv-fglrx kmod-fglrx </source> Если при обновлении выдает сообщение о конфликтах версий kmod-fglrx, то перед запуском предыдущей строки, удалите предыдущую версию kmod-fglrx, а затем запустите установку: <source lang="bash"> # rpm --nodeps -e kmod-fglrx # yum install kmod-fglrx </source> 3. Запускаем в консоли: <source lang="bash"> # init 3 </source> 4. Запускаем в косоли: <source lang="bash"> # fglrx-config-display enable </source> 5. Редактируем /etc/X11/xorg.conf, проверяем наличие следующих строк, если их нет, то добавляем: <source lang="httpd"> Section "Device" Driver "fglrx" EndSection Section "Extensions" Option "Composite" "Disable" EndSection Section "ServerFlags" Option "AIGLX" "off" EndSection </source> Если вы используете драйвер новее 8.42.3 то последние две секции (''Extensions'' и ''Server``Flags'') менять не нужно. Версия драйвера 8.42 и выше поддерживает AIGLX. Если чипсет компании Intel, то после строчки <code>Driver "fglrx"</code> добавляем <code>Option "~UseInternalAGPGART" "no"</code> в секции ''Section "Device"'' 6. Запускаем X в косоли: <source lang="bash"> # init 5 </source> 7. Проверяем работоспособность драйвера: <source lang="bash"> # fglrxinfo </source> и смотрим, чтобы "OpenGL vendor string" был "ATI Technologies Inc." 8. Запускаем <source lang="bash"> # glxinfo |grep direct </source> и смотрим, чтобы было: "direct rendering: Yes" 9. Запускаем <source lang="bash"> # fgl_glxgears </source> и смотрим, как шустро вращается кубик + считаем FPS. '''''Примечание:''''' Если при попытке подгрузить модуль fglrx выдаёт ошибку типа: <source lang="bash"> # modprobe fglrx FATAL: Error inserting fglrx (/lib/modules/2.6.11.231005/misc/fglrx.ko): Operation not permitted </source> значит ещё подгружен модуль radeon. Выгрузите его: <source lang="bash"> # modprobe -r radeon </source> а затем, снова загрузите fglrx: <source lang="bash"> # modprobe fglrx </source> Если что-то не получается - напишите в тему поддержки, в форуме или чате. При этом желательно указывать вывод следующих команд: <source lang="bash"> $ grep Driver /etc/X11/xorg.conf $ egrep EE\|WW /var/log/Xorg.0.log $ ldd /usr/bin/glxinfo $ LIBGL_DEBUG=verbose glxinfo |head -n 20 $ egrep fglrx\|radeon /proc/modules $ dmesg|egrep fglrx\|radeon </source> [[Category:Драйвера]] [[Category:Установка и настройка]] e2437db90457204d1fed98ee9c71732bf7baee6e Установка проприетарных драйверов от компании ATI (AMD) 0 82 181 2008-06-30T12:08:15Z OlegA 1 Новая: {{Суперпользователь}} 1. [http://ati.amd.com/support/driver.html На официальном сайте качаем послдние дравера]. 2. Провер... wikitext text/x-wiki {{Суперпользователь}} 1. [http://ati.amd.com/support/driver.html На официальном сайте качаем послдние дравера]. 2. Проверяем, установлены ли все пакеты: * mesa-libGL * libstdc++ * libgcc * XFree86-libs * fontconfig * expat * freetype * zlib * gcc * kernel-devel если, что-то не установлено, то необходимо установить при помощи утилиты yum. 3. Создаём пакеты для Fedora 6 или Fedora 7 <source lang="bash"> $ sh ati-driver-installer-8.35.5-x86.x86_64.run --buildpkg Fedora/FC6 </source> 4. Скомпилятся несколько rpm-файлов. 5. Вы можете устанавливать не всё, но самое важное это: ATI-fglrx и kernel-module-ATI-fglrx 6. Устанавливаем эти пакеты: <source lang="bash"> # yum localinstall ATI-fglrx....rpm kernel-module-ATI-fglrx.....rpm </source> или <source lang="bash"> # rpm -Uvh ATI-fglrx....rpm kernel-module-ATI-fglrx.....rpm </source> 7. После установки проверьте, чтобы следующие параметры были в /etc/X11/xorg.conf: <source lang="httpd"> Section "Device" Driver "fglrx" EndSection Section "Extensions" Option "Composite" "Disable" EndSection Section "ServerFlags" Option "AIGLX" "off" EndSection </source> если чего-то нет, то добавьте. 8. Перезапустите Xorg: <source lang="bash"> # init 3 </source> 9. В консоли запустим Xorg: <source lang="bash"> # init 5 </source> 10. Проверяем: <source lang="bash"> # fgl_glxgears </source> если Вы видите вращающийся кубик, то всё ОК. Драйвера функционируют. [[Category:Установка и настройка]] [[Category:Драйвера]] a6345b9b49fe589306cb2ae4a177a56d832b0035 Установка и настройка драйвера для видео-карт фирмы NVIDIA 0 83 182 2008-06-30T12:13:47Z OlegA 1 Новая: {{Суперпользователь}} == Установка == 1. Добавление репозитория livna, если ещё не добавлен. 2. Теперь следу... wikitext text/x-wiki {{Суперпользователь}} == Установка == 1. Добавление репозитория livna, если ещё не добавлен. 2. Теперь следует определится с используемым драйвером в зависимости от установленной карты: * xorg-x11-drv-nvidia и kmod-nvidia для карт от Ge``Force FX 5200 до 8800 * xorg-x11-drv-nvidia-96xx и kmod-nvidia-96xx для карт от Ge``Force 2MX (но не Ge``Force 2/Pro/Ti) до 7900 * xorg-x11-drv-nvidia-legacy и kmod-nvidia-legacy для карт от Riva TNT до Ge``Force 6800. 3. Устанавливаем требуемые пакеты: <source lang="bash"> # yum install xorg-x11-drv-nvidia-96xx kmod-nvidia-96xx </source> 4. Перегружаем X (Ctrl+Alt+Backspace) или всю систему если ускорение не появилось. 5. Запускаем в консоли <source lang="bash"> # glxinfo </source> и смотрим, чтобы "OpenGL vendor string" был "NVIDIA Corporation" 6. Запускаем <source lang="bash"> # glxinfo |grep direct </source> и смотрим, чтобы было: "direct rendering: Yes" 7. Запускаем <source lang="bash"> # glxgears </source> и смотрим, как шустро вращается кубик + считаем FPS. == Разгон == Начиная с версии 1.0-7664 закрытых драйверов появилась возможность управлять частотами видео-карты. Чтобы включить данную возможность необходимо добавить в <code>/etc/X11/xorg.conf</code> в секцию <code>"Device"</code> следующую опцию: <source lang="httpd"> Option "Coolbits" "1" </source> затем перезапустить Xorg. После этого будет доступен новый пункт меню в nvidia-settings. Как и в драйверах для систем Windows доступна автоматическое определение максимальных частот. Для сохранения настроек изменения частот необходимо создать копию файла <code>~/.nvidia-settings-rc</code> и добавить следующие пункты: <pre> GPUOverclockingState=1 GPU2DClockFreqs=500,400 GPU3DClockFreqs=500,400 </pre> Значения частот необходимо указывать, только те, что Вам подходят. При загрузке системы необходимо выполнить <source lang="bash"> $ nvidia-settings --config=~/.my-nv-settings-rc </source> где <code>.my-nv-settings-rc</code> - наш созданный конфигурационный файл, содержащий настройки частот. [[Category:Установка и настройка]] [[Category:Драйвера]] 26a77d749e6111b351ea9872effe29542387f936 Настройка стандартных вертикальных частот монитора 0 84 183 2008-06-30T12:17:16Z OlegA 1 Новая: {{Суперпользователь}} == Проблема == После установки системы Вы вдруг обнаруживаете, что Ваш монитор пе... wikitext text/x-wiki {{Суперпользователь}} == Проблема == После установки системы Вы вдруг обнаруживаете, что Ваш монитор перестал поддерживать высокие частоты по вертикали, хотя под другими ОС всё нормально функционировало. Этому есть объяснение: при инициализации X-ов происходит опрос монитора по DDC на наличие режимов и их характеристик, затем идёт сравнение с режимами видео-карты, те что совпадают добавляются в список возможных для использования. В мониторе чаще всего занесены стандартные разрешения, по-этому не всегда по-умолчанию удовлетворяет запросы. == Как исправить данную ситуацию? == 1. Необходимо знать параметры вашего монитора, а именно на каком разрешении и с какой максимальной частотой по вертикали возможна работа. 2. Посещаем данный сайт: http://www.sh.nu/nvidia/gtf.php . Заполняем на нём все необходимые данные, к примеру у нас монитор работает на 1280х1024 с 100Гц по вертикали. Также можно воспользоваться стандартной утилитой ''gtf'': <source lang="bash"> $ gtf 1280 1024 100 </source> 3. Генерируем данные и получаем строчку вида: <source lang="httpd"> # 1280x1024 @ 100.00 Hz (GTF) hsync: 108.50 kHz; pclk: 190.96 MHz Modeline "1280x1024_100.00" 190.96 1280 1376 1520 1760 1024 1025 1028 1085 -HSync +Vsync </source> 4. С правами root редактируем xorg.conf (/etc/X11/xorg.conf) и добавляем в секцию "Monitor" <source lang="httpd"> Section "Monitor" Identifier "DELL 2001FP" DisplaySize 367 275 HorizSync 31-120 VertRefresh 56-150 Option "DPMS" # 1280x1024 @ 100.00 Hz (GTF) hsync: 108.50 kHz; pclk: 190.96 MHz Modeline "1280x1024_100.00" 190.96 1280 1376 1520 1760 1024 1025 1028 1085 -HSync +Vsync EndSection </source> '''''Внимание:''''' убедитесь что параметры ''Horiz``Sync'' и ''Vert``Refresh'' правильно определяют частоты горизонтальной и вертикальной развертки вашего монитора (в KHz и Hz соответсвенно). 5. Новый Modeline надо также указать в секции ''Screen''. На пример так: <source lang="httpd"> Section "Screen" Identifier "Screen0" Device "Videocard0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 Modes "1280x1024_100.00" "1024x768" "800x600" "640x480" EndSubSection EndSection </source> 6. Перезапускаем XOrg. Так можно задать частоты на все возможные разрешения монитора. '''''Примечание:''' [http://koala.ilog.fr/cgi-bin/nph-colas-modelines Здесь] можно сгенерировать всевозможные Modeline'' [[Category:Установка и настройка]] [[Category:Драйвера]] e3432b234f4152c9dc2561fca5daa375a5cad6f2 184 183 2008-06-30T12:18:27Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Проблема == После установки системы Вы вдруг обнаруживаете, что Ваш монитор перестал поддерживать высокие частоты по вертикали, хотя под другими ОС всё нормально функционировало. Этому есть объяснение: при инициализации X-ов происходит опрос монитора по DDC на наличие режимов и их характеристик, затем идёт сравнение с режимами видео-карты, те что совпадают добавляются в список возможных для использования. В мониторе чаще всего занесены стандартные разрешения, по-этому не всегда по-умолчанию удовлетворяет запросы. == Как исправить данную ситуацию? == 1. Необходимо знать параметры вашего монитора, а именно на каком разрешении и с какой максимальной частотой по вертикали возможна работа. 2. Посещаем данный сайт: http://www.sh.nu/nvidia/gtf.php . Заполняем на нём все необходимые данные, к примеру у нас монитор работает на 1280х1024 с 100Гц по вертикали. Также можно воспользоваться стандартной утилитой ''gtf'': <source lang="bash"> $ gtf 1280 1024 100 </source> 3. Генерируем данные и получаем строчку вида: <source lang="httpd"> # 1280x1024 @ 100.00 Hz (GTF) hsync: 108.50 kHz; pclk: 190.96 MHz Modeline "1280x1024_100.00" 190.96 1280 1376 1520 1760 1024 1025 1028 1085 -HSync +Vsync </source> 4. С правами root редактируем xorg.conf (/etc/X11/xorg.conf) и добавляем в секцию "Monitor" <source lang="httpd"> Section "Monitor" Identifier "DELL 2001FP" DisplaySize 367 275 HorizSync 31-120 VertRefresh 56-150 Option "DPMS" # 1280x1024 @ 100.00 Hz (GTF) hsync: 108.50 kHz; pclk: 190.96 MHz Modeline "1280x1024_100.00" 190.96 1280 1376 1520 1760 1024 1025 1028 1085 -HSync +Vsync EndSection </source> '''''Внимание:''''' убедитесь что параметры ''HorizSync'' и ''VertRefresh'' правильно определяют частоты горизонтальной и вертикальной развертки вашего монитора (в KHz и Hz соответсвенно). 5. Новый Modeline надо также указать в секции ''Screen''. На пример так: <source lang="httpd"> Section "Screen" Identifier "Screen0" Device "Videocard0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 Modes "1280x1024_100.00" "1024x768" "800x600" "640x480" EndSubSection EndSection </source> 6. Перезапускаем XOrg. Так можно задать частоты на все возможные разрешения монитора. '''''Примечание:''' [http://koala.ilog.fr/cgi-bin/nph-colas-modelines Здесь] можно сгенерировать всевозможные Modeline'' [[Category:Установка и настройка]] [[Category:Драйвера]] 8cedb1ba8940456bc22c01029756aca73307134c Настройка MIDI для звуковых карт семейства Creative Live! 0 85 185 2008-07-01T06:28:04Z OlegA 1 Новая: {{Суперпользователь}} == Описание == По умолчанию ALSA умеет работать с устройствами серии Live''!'' фирмы Creati... wikitext text/x-wiki {{Суперпользователь}} == Описание == По умолчанию ALSA умеет работать с устройствами серии Live''!'' фирмы Creative, но проигрование *.midi не возможно. Это связано прежде всего из-за того, что не загружены сэмплы. == Настройка для проигрывания MIDI файлов == 1. Устанавливаем от root пакет <source lang="bash"> # yum install awesfx </source> 2. Копируем файл <code>8MBGMSFX.SF2</code> с компакт-диска звуковой карты (AUDIO/ENGLISH/SFBANK/8MBGMSFX.SF2) в /etc/midi с правами root <source lang="bash"> # cp /media/cd/AUDIO/ENGLISH/SFBANK/8MBGMSFX.SF2 /etc/midi/8mbgmsfx.sf2 </source> ''Примечание: /media/cd/ у Вас могут быть другими.'' 3. Добавляем в /etc/rc.local строчку <source lang="bash"> # asfxload /etc/midi/8mbgmsfx.sf2 </source> 4. В консоли выполняем <source lang="bash"> # asfxload /etc/midi/8mbgmsfx.sf2 </source> 5. Проверяем открытые порты <source lang="bash"> $ aplaymidi -l </source> 6. Проигрываем <source lang="bash"> $ aplaymidi --port=65:0 /mnt/shyam/music/midi/mi2.mid </source> [[Category:Установка и настройка]] [[Category:Драйвера]] 4e0eb59d92e1a0799133c4e3a471cf996bae22b7 Настройка SurroundSound для звуковых карт семейства Creative Live! 0 86 186 2008-07-01T08:12:29Z 195.22.241.130 0 Новая: {{Суперпользователь}} == Описание == ALSA поддерживает 5.1 реализацию звука, но если Вы обладатель только 4.0... wikitext text/x-wiki {{Суперпользователь}} == Описание == ALSA поддерживает 5.1 реализацию звука, но если Вы обладатель только 4.0 системы звуковой системы, то каналы центральной колонки и саб Вы не услышите при просмотре DVD (5.1 sound). Но Выход есть - распределить звук центрального канала на левый и правый (передние). == Конвертируем 5.1 в 4.0 == 1. Создаём и редактируем файл <code>~/.asoundrc</code> <source lang="httpd"> pcm.51to40 { type route slave.pcm surround51 slave.channels 6 # Front and rear ttable.0.0 1 ttable.1.1 1 ttable.2.2 1 ttable.3.3 1 # Center channel routing (routed to front-left and front-right), # 6dB gaindrop (gain of 0.5) per channel ttable.4.0 0.5 ttable.4.1 0.5 # LFE channel routing (routed to front-left and front-right), # 6dB gaindrop (gain of 0.5) per channel ttable.5.0 0.5 ttable.5.1 0.5 } </source> 2. Проверяем настройки <source lang="bash"> $ speaker-test -c 6 -D 51to40 -t sine -f 40 </source> 3. Теперь в нужных нам приложениях указываем тип вывода звука как ''51to40'' вместо ''surround40''. К примеру, в Xine указываем ''plug:51to40:0'' 4. Для OpenAL, создаём и редактируем файл <code>~/.openalrc</code> <pre> (define speaker-num 4) (define devices '(alsa)) (define alsa-device "surround40") </pre> [[Category:Установка и настройка]] [[Category:Драйвера]] c393096d90cdca0fc2f165da57125e55a5768515 Установка CAPT принтеров Canon LaserShot на примере LBP-1120 0 87 187 2008-07-01T08:17:03Z OlegA 1 Новая: {{Суперпользователь}} [http://software.canon-europe.com/software/0023675.asp?model= Страница загрузки] == Подготовка == Закачиваем ... wikitext text/x-wiki {{Суперпользователь}} [http://software.canon-europe.com/software/0023675.asp?model= Страница загрузки] == Подготовка == Закачиваем драйвер с сайта Canon. Архив ''Driver.tar.gz'' содержит два RPM пакета. Распаковываем его: <source lang="bash"> $ tar xf Driver.tar.gz </source> убеждаемся что подсистема печати установлена: <source lang="bash"> # yum install cups </source> И отключаем SELinux для подсистемы печати: <source lang="bash"> # setsebool -P cupsd_config_disable_trans=1 cupsd_lpd_disable_trans=1 cupsd_lpd_disable_trans=1 </source> == Установка == Устанавливаем capt драйвер и перезагружаем сервис cups: <source lang="bash"> # rpm -ivh cndrvcups-capt-1.30-1.i386.rpm cndrvcups-common-1.30-1.i386.rpm # service cups restart </source> Регистрируем принтер принтер под именем ''LBP1120'' используя файл описания соответствующий нашей модели принтера - ''CNCUPSLBP1120CAPTK.ppd'': <source lang="bash"> # /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E </source> Другие файлы описания находим здесь: <source lang="bash"> # ls /usr/share/cups/model/ </source> Создаем FIFO каналы необходимые для связи демона ccpd и cups: <source lang="bash"> # mkdir /var/ccpd # mkfifo -m 666 /var/ccpd/fifo0 # mkfifo -m 666 /var/ccpd/fifo1 # mkfifo -m 666 /var/ccpd/fifo2 # mkfifo -m 666 /var/ccpd/fifo3 # mkfifo -m 666 /var/ccpd/fifo4 # mkfifo -m 666 /var/ccpd/fifo5 # mkfifo -m 666 /var/ccpd/fifo6 # mkfifo -m 666 /var/ccpd/fifo7 # chmod 666 /var/ccpd/fifo* </source> Регистрируем принтер в демоне ccpd и обеспечиваем его запуск при старте системы: <source lang="bash"> # /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0 # service ccpd start # ln -s /etc/init.d/ccpd /etc/rc5.d/S99ccpd </source> Теперь можно запустить графическую утилиту ''system-config-printer'' для проверки прочих параметров, тестовой печати, удаления некорректных предыдущих инсталляций. == Полезные советы == Для проверки состояния принтера удобно использовать графическую утилиту ''captstatusui''. Запускается она командой: <source lang="bash"> $ captstatusui -P LBP1120 </source> где LBP1120 - имя принтера зарегистрированного в подсистеме печати. [[Category:Установка и настройка]] [[Category:Драйвера]] 8c72eee0b73c8dc5fff41a4b5c727728218b67a7 Установка ADSL USB модема на примере Comtrend CT-351 0 88 188 2008-07-01T08:23:51Z OlegA 1 Новая: {{Суперпользователь}} == Документация == По этим ссылкам вы найдете описание других методов подключени... wikitext text/x-wiki {{Суперпользователь}} == Документация == По этим ссылкам вы найдете описание других методов подключения: * [http://atm.eagle-usb.org/wakka.php?wiki=UeagleAtmDoc Гид установки и настройки] драйвера UEagleAtm. FAQ, Форум. * [http://mcmcc.bat.ru/acorp/Acorp_Sprinter@ADSL_USB/user_guide-v.1.0_rus.pdf Гид по установке] для модема Acorp на чипсете Conexant Access``Runner для Fedora/Redhat (на русском). == Подготовка == Дистрибутив Fedora Core 6 стандартно включает в себя драйверы USB ATM чипов: * ''cxacru'' - Conexant Access``Runner ADSL USB modem driver * ''speedtch'' - Alcatel Speed``Touch USB driver * ''ueagle-atm'' - ADI 930/Eagle USB ADSL Modem driver Однако USB модемы, как правило устройства "без памяти" и требуют загрузку микрокода при инициализации. Поэтому нам потребуется прошивка. ==== Поиск прошивки ==== Имеем на руках: ADSL USB модем Comtrend CT-351. Нагло включаем его в USB порт и смотрим /var/log/messages: <pre> Mar 7 09:15:19 chomper kernel: usb 1-3: new full speed USB device using ohci_hcd and address 4 Mar 7 09:15:19 chomper kernel: usb 1-3: configuration #1 chosen from 1 choice Mar 7 09:15:20 chomper kernel: NET: Registered protocol family 8 Mar 7 09:15:20 chomper kernel: NET: Registered protocol family 20 Mar 7 09:15:20 chomper kernel: [ueagle-atm] driver ueagle 1.4 loaded Mar 7 09:15:20 chomper kernel: usb 1-3: [ueagle-atm] ADSL device founded vid (0X1110) pid (0X9022) : Eagle II pots Mar 7 09:15:20 chomper kernel: usb 1-3: reset full speed USB device using ohci_hcd and address 4 Mar 7 09:15:20 chomper kernel: usb 1-3: [ueagle-atm] pre-firmware device, uploading firmware Mar 7 09:15:20 chomper kernel: usb 1-3: [ueagle-atm] loading firmware ueagle-atm/eagleII.fw Mar 7 09:15:20 chomper kernel: usbcore: registered new interface driver ueagle-atm Mar 7 09:15:20 chomper kernel: usb 1-3: [UEAGLE-ATM] firmware is not available Mar 7 09:15:20 chomper firmware_helper[4139]: Loading of /lib/firmware/ueagle-atm/eagleII.fw for usb driver failed: No such file or directory </pre> Видно что драйвер заявил о отсутствии firmware-файла ''ueagle-atm/eagleII.fw''. Поэтому ищем знакомых с Интернетом. Используем [http://google.md google] для нахождения нужных файлов. Поисковик дал нам ссылку на http://eagle-usb.org/. Далее находим и сами прошивки, скачиваем их: <source lang="bash"> $ wget http://eagle-usb.org/ueagle-atm/non-free/ueagle-data-1.1.tar.gz </source> == Установка == Распаковываем архив в ''/lib/firmware/ueagle-atm'' <source lang="bash"> # mkdir /lib/firmware/ueagle-atm # tar -C /lib/firmware/ueagle-atm -xf ueagle-data-1.1.tar.gz </source> Устанавливаем средства поддержки ATM <source lang="bash"> # yum install linux-atm </source> если вы не озаботились созданием локального репозитория, тогда возьмем нужные пакеты с установочного диска: <source lang="bash"> # cd /media/Fedora* # rpm -ivh Fedora/RPMS/linux-atm-2*rpm Fedora/RPMS/linux-atm-libs-2*rpm </source> перезагружаем драйвер, чтобы он смог подхватить прошивку: <source lang="bash"> # rmmod ueagle-atm # modprobe ueagle-atm </source> Можно и просто выдернуть USB кабель, и вернуть его на место. Опять смотрим в ''/var/log/messages'': <pre> Mar 7 09:37:10 chomper kernel: usb 1-3: [ueagle-atm] pre-firmware device, uploading firmware Mar 7 09:37:10 chomper kernel: usb 1-3: [ueagle-atm] loading firmware ueagle-atm/eagleII.fw Mar 7 09:37:12 chomper kernel: usb 1-3: [ueagle-atm] firmware uploaded </pre> Отлично, прошивка загрузилась. '''''Внимание:''' для ''ueagle-atm'' возможен конфликт с некоторыми USB-контроллерами.'' В лог-файле можно заметить строку: <pre> ATM dev 0: usbatm_submit_urb: urb 0xffff81001c22bc80 submission failed (-28)! </pre> Решается добавлением опции ''use_iso'': <source lang="bash"> # echo "options ueagle-atm use_iso=0" >>/etc/modprobe.conf # depmod -a # rmmod ueagle_atm # modprobe ueagle_atm </source> Предположим что провайдера мы получили ряд параметров соединения: PVC VCI, PVC VPI, тип инкапсуляции, IP-адрес наш, маска под-сети, шлюз и адреса DNS серверов. Проверим эти параметры вручную: <source lang="bash"> # br2684ctl -c 0 -b -e 0 -a 0.35 </source> эта команда создаст сетевое устройство nas0 (''-c 0''), и установит его параметры: VPI=0, VCI=35 (''-a 0.35'') Инкапсуляция - LLC (''-e 0''). Для VC mux инкапсуляции передаем параметр ''-e 1'' "Поднимаем" сетевой интерфейс: <source lang="bash"> # ifconfig nas0 <ip> <netmask> <ip-mask> up </source> устанавливаем маршрут по умолчанию: <source lang="bash"> # route add -net 0.0.0.0 netmask 0.0.0.0 gw <gateway-ip> dev nas0 </source> добавляем адрес DNS сервера в файл конфигурации: <source lang="bash"> # echo nameserver <dns-ip> >>/etc/resolv.conf </source> Вот и все - пинг-уем провайдера, запускаем браузер, и пр. В случае проблем не лишне посмотреть в лог-файл. === Скрипты ининциализации === Для большего удобства, возьмем скрипты управления ATM соединением от драйвера модема ACORP: <source lang="bash"> $ cd /tmp $ wget http://www.beta.acorp.ru/files/center/adsl/usb/driver/Acorp_Sprinter@ADSL_USB-1.0.tar.tar $ tar xf Acorp_Sprinter@ADSL_USB-1.0.tar.tar # cd Acorp_Sprinter@ADSL_USB-1.0/RPMS/ && rpm -ivh network-scripts-br2684-0.1-1.i386.rpm </source> и пропишем все нужные параметры в стандартный файл конфигурации сети Red``Hat/Fedora: <source lang="bash"> # cat <<EOF >/etc/sysconfig/network-scripts/ifcfg-nas0 > USERCTL=yes > BOOTPROTO=static > DEVICE=nas0 > ONBOOT=yes > VPI=0 > VCI=35 > ENCAPSULATION=LLC > NETMASK=255.255.255.0 > GATEWAY=87.248.199.254 > IPADDR=87.248.199.99 > EOF </source> Теперь нет нужды выполнять ''br2684ctl, route, ifconfig'' вручную. Используем команды <code>ifup nas0</code> для активации интерфейса, и <code>ifdown nas0</code> для де-активации. Параметр ONBOOT в файле ''ifcfg-nas0'' определяет будет ли соединение устанавливаться автоматически при запуске системы. == Полезное == Удобную утилиту для диагностики соединения можно найти [http://svn.gna.org/viewcvs/ueagleatm/trunk/ueagle-utils/debug/ здесь] (выбираем ''stats'', потом первый сверху ''download''). Сохраняем, и даем право на исполнение <code>chmod +x stats</code>. <source lang="bash"> $ chmod +x stats $ ./stats $ ueagle-atm status display ------------------------------------------------------------- Vendor ID : 0x1110 Product ID : 0x9021 Rev: 0x5002(pots) USB Bus : 001 USB Device : 005 Dbg : 0 VID-CPE 28 Firmware version 44e2ea17 Tx Rate 1024 Kps Rx Rate 8128 Kps Tx Atten 20 dB Rx Atten 31 dB Tx Margin 6 dB Rx Margin 8 dB Tx Blocks 15172686 Rx Blocks 15178068 Tx FEC 0 Rx FEC 0 Tx Error 4140 Rx Error 6348 Delin GOOD Flags 0000008004 Modem is operational </source> [[Category:Установка и настройка]] [[Category:Драйвера]] 1f16072166322a1934b85521ca9957c403f2187e Создание локального репозитория 0 89 189 2008-07-01T08:47:23Z OlegA 1 Новая: {{Суперпользователь}} 1. Определимся с путями зададим переменные и создадим каталог: <source lang="bash"> export REPO... wikitext text/x-wiki {{Суперпользователь}} 1. Определимся с путями зададим переменные и создадим каталог: <source lang="bash"> export REPO_NAME=myrepo export REPO_ROOT=/srv/repos/$REPO_NAME mkdir -p $REPO_ROOT </source> если предполагается сделать репо доступным по HTTP протоколу, также обозначим имя нашего сервера (если вы его не знаете - посмотрите на вывод команды ''hostname''). <source lang="bash"> REPO_HOST=anyhost.anydomain.md </source> 2. Зависимости. httpd требуется для удаленного доступа к репо. <source lang="bash"> # yum install createrepo anaconda-runtime anaconda yum-utils httpd </source> 3. Заполняем репозиторий RPM пакетами. Для примера возьмем их с дистрибутивного диска. <source lang="bash"> $ cd /media/FC_6\ i386\ DVD/Fedora/RPMS/ && cp -a *.rpm $REPO_ROOT </source> в репозитории также содержится файл ''comps.xml'' описывающий группы пакетов. Также его скопируем. <source lang="bash"> $ cp -a /media/FC_6\ i386\ DVD/Fedora/base/comps.xml $REPO_ROOT/ </source> 4. Собственно создадим данные репозитория. Эту операцию нужно делать при каждом обновлении данных в репо (новые или обновленные пакеты). <source lang="bash"> $ cd $REPO_ROOT $ createrepo -p -g comps.xml . </source> 5. Теперь добавляем новый репо в конфигурацию yum <source lang="bash"> $ cat >/etc/yum.repos.d/$REPO_NAME.repo <<EOF [$REPO_NAME] name=My cool $REPO_NAME - $basearch baseurl=file://$REPO_ROOT failovermethod=priority enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora EOF </source> 6. Добавив myrepo в конфигурацию Apache. Пропускаем этот шаг если нужен только локальный доступ. В примере доступ разрешен только с локальной машины и локальной сети с диапазоном IP адресов 192.168.0.1-254. <source lang="bash"> $ cat >/etc/httpd/conf.d/$REPO_NAME.conf <<EOF Alias /$REPO_NAME $REPO_ROOT <Directory "$REPO_ROOT"> Options Indexes MultiViews AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.1 Allow from ::1 Allow from 192.168.0.0/24 </Directory> EOF service httpd reload </source> 7. Теперь добавляем новый репо в конфигурацию yum на локальной и удаленных машинах. Пропускаем этот шаг если нужен только локальный доступ. <source lang="bash"> $ cat >/etc/yum.repos.d/$REPO_NAME.repo <<EOF [$REPO_NAME] name=My cool $REPO_NAME - $basearch baseurl= http://$REPO_HOST/$REPO_NAME failovermethod=priority enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora EOF cp /etc/yum.repos.d/$REPO_NAME.repo /var/www/html/ </source> На удаленных машинах (клиентах) достаточно будет сохранить файл ''http://anyhost.anydomain.md/myrepo.repo'' в каталог '' /etc/yum.repos.d/ '' [[Category:Установка и настройка]] [[Category:Администрирование]] 841433960bd72f30b4199f05e44960b334a79f41 Категория:Администрирование 14 90 190 2008-07-01T08:47:48Z OlegA 1 Новая: <nowiki></nowiki> wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 201 190 2008-07-03T13:08:06Z OlegA 1 wikitext text/x-wiki [[Category:Установка и настройка]] 61e227d6053c6034ab14497c9898c363a0b986ed Создаем собственное правило SELinux на базе аудит сообщения 0 92 192 2008-07-03T12:49:44Z OlegA 1 Новая: {{Суперпользователь}} Многие часто выключают SEL``inux, полагая что от него только проблемы. На самом деле ... wikitext text/x-wiki {{Суперпользователь}} Многие часто выключают SEL``inux, полагая что от него только проблемы. На самом деле это очень полезный инструмент аудита и защиты системы. Просто надо его правльно "готовить". :) Рассмотрим простой пример - некий скрипт тянется на, скажем, 8000 порт. По умолчанию такой доступ запрещен. Но мы то знаем что это допустимо. Лечится просто: * глядим в '''/var/log/messages''', видим там что-то вроде <source lang="bash"> # grep audit /var/log/messages|tail -n 1 Oct 11 11:03:11 hostname kernel: audit(1192089791.364:4563): avc: denied { name_connect } for pid=9956 comm="python" dest=8000 \ scontext=user_u:system_r:httpd_fastcgi_script_t:s0 tcontext=system_u:object_r:soundd_port_t:s0 tclass=tcp_socket </source> * эту строку "скармливаем" audit2why: <source lang="bash"> # grep audit /var/log/messages|tail -n 1|audit2why Oct 11 11:03:11 hostname kernel: audit(1192089791.364:4563): avc: denied { name_connect } for pid=9956 comm="python" dest=8000 \ scontext=user_u:system_r:httpd_fastcgi_script_t:s0 tcontext=system_u:object_r:soundd_port_t:s0 tclass=tcp_socket Was caused by: Missing or disabled TE allow rule. Allow rules may exist but be disabled by boolean settings; check boolean settings. You can see the necessary allow rules by running audit2allow with this audit message as input. </source> * нам советуется создать разрешающие правила. Как? Просто: <source lang="bash"> # grep audit /var/log/messages|tail -n 1||audit2allow -ve -M pythonTcp8000Moin ******************** IMPORTANT *********************** To make this policy package active, execute: semodule -i pythonTcp8000Moin.pp # semodule -i pythonTcp8000Moin.pp </source> * Вот и всё. [[Category:Установка и настройка]] [[Category:Администрирование]] d404883223f11f586e3f3bae70eef22ee4a72370 Смена названия сетевого интерфейса 0 93 193 2008-07-03T12:52:31Z OlegA 1 Новая: {{Суперпользователь}} Иногда, например при добавлении новой сетевой карты, возникает необходимость п... wikitext text/x-wiki {{Суперпользователь}} Иногда, например при добавлении новой сетевой карты, возникает необходимость поменять название, которое к ней автоматически привязывает система. В данной статье мы рассмотрим, как поменять местами интерфейсы eth1 и eth0. К примеру, в моём случае, eth0 - это карта Attansic L2, а eth1 - Realtek RTL-8139 - но я хочу, чтобы Realtek был eth0. == udev == Названия устройствам, найденным в системе, задаёт udev - поэтому его и стоит настроить в первую очередь. Так что посмотрим конфигурацию udev для сетевых интерфейсов: <source lang="bash"> # cat /etc/udev/rules.d/70-persistent-net.rules </source> что мы видим: <source lang="httpd"> # This file was automatically generated by the /lib/udev/write_net_rules # program run by the persistent-net-generator.rules rules file. # # You can modify it, as long as you keep each rule on a single line. # PCI device 0x1969:0x2048 (atl2) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1b:fc:b0:5e:24", ATTR{type}=="1", NAME="eth0" # PCI device 0x10ec:0x8139 (8139too) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:19:e0:0f:45:94", ATTR{type}=="1", NAME="eth1" </source> то есть сетевушка с драйвером atl2 и адресом 00:1B:FC:B0:5E:24, закреплена под псевдонимом eth0 Чтобы сменить привязку, достаточно сменить параметры NAME в конце строк на желаемые. После перезагрузки компьютера, Realtek уже будет называться eth0 == init == init скрипты так-же привязывают интерфейс к устройству по MAC адресу, так что если их не поправить после переназначения интерфейсов, могут возникнуть ошибки при поднятии интерфейсов. Исправить их можно при помощи стандартной графической утилиты: <source lang="bash"> # system-config-network </source> для этого, во вкладке "устройства", нужно открыть каждое, перейти во вкладку "аппаратное устройство" - и либо отключить там привязку по MAC, либо выяснить изменившийся MAC, нажав соответствующую кнопку. Так-же можно вручную изменить файлы конфигураций /etc/sysconfig/networking/devices/ifcfg-eth* в моём cслучае,это были ifcfg-eth0 и ifcfg-eth1 соответственно, открыв их любимым текстовым редактором (с root правами!) - правим или удаляем там строки HWADDR, и сохраняем, не отключая жёстких ссылок. [[Category:Установка и настройка]] [[Category:Администрирование]] 7a53fa96265981a0299773ae0aa4401a0e3e3157 Сборка пакетов rpm 0 94 194 2008-07-03T12:55:19Z OlegA 1 Новая: {{Суперпользователь}} == Подготовка == Для правильной сборки пакетов нам понадобиться mock. Для установки... wikitext text/x-wiki {{Суперпользователь}} == Подготовка == Для правильной сборки пакетов нам понадобиться mock. Для установки выполняем следующее: <source lang="bash"> # yum install mock </source> Mock позволяет собирать пакеты в chroot от простого пользователя (без прав root), причём определяется автоматически какие пакеты нужны для сборки. Для того, чтобы пользователь мог запускать mock необходимо добавить пользователя или пользователей в группу mock: <source lang="bash"> # usermod -a -G mock <user> </source> Не забываем, что после добавления в группу, необходимо пройти заново авторизацию. == Сборка == Для сборки нам нужен готовый src.rpm. Запуск сборки происходит по команде: <source lang="bash"> $ mock -r fedora-8-i386 rebuild package-1.2-3.src.rpm </source> где <code>fedora-8-i386</code> - профиль для сборки. Список профилей доступен по <code>/etc/mock</code>. Если необходимо просматривать установку в реальном режиме, то используйте параметр <code>-v</code> (verbose). Первый запуск обычно достаточно долгий, т.к. создаётся основное дерево для сборки. Но последующие запуски будут быстрее, т.к. используется кэш. == Дополнительные опции Mock == Вы можете добавлять и менять репозитории в профиле. Так же Вы можете добавить прокси сервер, если доступ в Интернет проходит только через прокси. Просто добавьте после строк конфигурации и перед репозиториями: <source lang="httpd"> proxy=http://localhost:3128/ </source> Есть возможность задавать значение макросов rpm. при помощи добавления в тот же профиль после конфигурационных строк, например: <source lang="httpd"> config_opts['macros']['%packager'] = "FedoraMD.org Project" config_opts['macros']['%vendor'] = "FedoraMD.org Project" </source> или заданием параметра <code>--define "packager FedoraMD.org Project" --define "vendor FedoraMD.org Project"</code> при вызове mock. По умолчанию собранные пакеты и логи находятся в /var/lib/mock. [[Category:Установка и настройка]] [[Category:Администрирование]] 9126808b8f3055ba8a172db6a037f3ba7fd30fc3 Gentoo: использование молдавского зеркала 0 95 195 2008-07-03T12:59:47Z OlegA 1 Новая: == Репозиторий == Для того, чтобы обновления ''Gentoo'' качались с одного из местных (Молдавских) серверов, д... wikitext text/x-wiki == Репозиторий == Для того, чтобы обновления ''Gentoo'' качались с одного из местных (Молдавских) серверов, достаточно лишь изменить следующую строку в файле '''/etc/make.conf''': <source lang="cfc"> GENTOO_MIRRORS="ftp://ftp.bsd.md/pub/Gentoo/gentoo http://89.33.254.209/gentoo ftp://ftp.lug.ro/gentoo http://distfiles.gentoo.org" </source> Больший приоритет имеют зеркала, находящиеся в начале строки. В данном примере, сначала будет попытка скачать файл с одного из MD-IX зеркал, в случае неудачи, пройдёт попытка подключения к [ftp://ftp.lug.ro/gentoo lug.ro], а затем - к [http://distfiles.gentoo.org gentoo.org]. == Дерево Portage == Так-же есть возможность синхронизировать и дерево ''portage'' с локального (Молдавского) зеркала, предоставляемого командой [http://www.bsd.md BSD.md]. Для этого, нужно добавить следующую строку в тот-же '''/etc/make.conf''': <source lang="cfc"> SYNC="rsync://rsync.bsd.md/gentoo-portage" </source> Другие зеркала portage: <source lang="cfc"> SYNC="rsync://89.33.254.209/gentoo-portage" </source> = Разное = Чтобы ещё ускорить процесс скачивания и установки обновлений, можно настроить portage, чтобы пока происходит сборка одного пакета, уже качался следующий. Это достигается добавлением опции parallel-fetch в строку FEATURES файла '''/etc/make.conf''': <source lang="cfc"> FEATURES="parallel-fetch" </source> e9577cf82645c5aad4a909c1ce2bc4392c09be78 196 195 2008-07-03T13:00:25Z OlegA 1 wikitext text/x-wiki == Репозиторий == Для того, чтобы обновления ''Gentoo'' качались с одного из местных (Молдавских) серверов, достаточно лишь изменить следующую строку в файле '''/etc/make.conf''': <source lang="cfc"> GENTOO_MIRRORS="ftp://ftp.bsd.md/pub/Gentoo/gentoo http://89.33.254.209/gentoo ftp://ftp.lug.ro/gentoo http://distfiles.gentoo.org" </source> Больший приоритет имеют зеркала, находящиеся в начале строки. В данном примере, сначала будет попытка скачать файл с одного из MD-IX зеркал, в случае неудачи, пройдёт попытка подключения к [ftp://ftp.lug.ro/gentoo lug.ro], а затем - к [http://distfiles.gentoo.org gentoo.org]. == Дерево Portage == Так-же есть возможность синхронизировать и дерево ''portage'' с локального (Молдавского) зеркала, предоставляемого командой [http://www.bsd.md BSD.md]. Для этого, нужно добавить следующую строку в тот-же '''/etc/make.conf''': <source lang="cfc"> SYNC="rsync://rsync.bsd.md/gentoo-portage" </source> Другие зеркала portage: <source lang="cfc"> SYNC="rsync://89.33.254.209/gentoo-portage" </source> = Разное = Чтобы ещё ускорить процесс скачивания и установки обновлений, можно настроить portage, чтобы пока происходит сборка одного пакета, уже качался следующий. Это достигается добавлением опции parallel-fetch в строку FEATURES файла '''/etc/make.conf''': <source lang="cfc"> FEATURES="parallel-fetch" </source> [[Category:Установка и настройка]] [[Category:Другие дистрибутивы]] dcc4bfc829c58825cb5dfb852b6a83c46d0b04a6 Категория:Другие дистрибутивы 14 96 197 2008-07-03T13:00:44Z OlegA 1 Новая: <nowiki></nowiki> wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 200 197 2008-07-03T13:07:41Z OlegA 1 wikitext text/x-wiki [[Category:Установка и настройка]] 61e227d6053c6034ab14497c9898c363a0b986ed Ubuntu: использование молдавского зеркала 0 97 198 2008-07-03T13:03:31Z OlegA 1 Новая: Популярный дистрибутив Ubuntu несложно обновлять с молдавского зеркала, тем самым ускоряя процесс, а дл... wikitext text/x-wiki Популярный дистрибутив Ubuntu несложно обновлять с молдавского зеркала, тем самым ускоряя процесс, а для некоторых – ещё и экономить этим деньги. Во всех дистрибутивах, основанных на Debian GNU/Linux, и его системе управления пакетами apt, к которым относится и семейство Ubuntu, репозитории записываются в файле /etc/apt/sources.list – его нам и предстоит править. Сначала, создадим резервную копию существующих настроек: <source lang="bash"> sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup </source> Теперь, откроем файл для редактирования. * Для Ubuntu (Gnome) <source lang="bash"> gksudo gedit /etc/apt/sources.list </source> * Для Kubuntu (KDE) <source lang="bash"> kdesu kwrite /etc/apt/sources.list </source> * Для Xubuntu (Xfce) <source lang="bash"> gksudo mousepad /etc/apt/sources.list </source> Удаляем содержимое (если что - у нас есть резервная копия) Теперь, в пустой документ вставляем следующее: Для версии 8.04 (Hardy) <source lang="cfc"> deb ftp://ftp.bsd.md/pub/Ubuntu hardy main restricted universe multiverse deb-src ftp://ftp.bsd.md/pub/Ubuntu hardy main restricted universe multiverse deb ftp://ftp.bsd.md/pub/Ubuntu hardy-updates main restricted universe multiverse deb-src ftp://ftp.bsd.md/pub/Ubuntu hardy-updates main restricted universe multiverse deb ftp://ftp.bsd.md/pub/Ubuntu hardy-proposed main restricted universe multiverse deb-src ftp://ftp.bsd.md/pub/Ubuntu hardy-proposed main restricted universe multiverse deb ftp://ftp.bsd.md/pub/Ubuntu hardy-security main restricted universe multiverse deb-src ftp://ftp.bsd.md/pub/Ubuntu hardy-security main restricted universe multiverse deb ftp://ftp.bsd.md/pub/Ubuntu hardy-backports main restricted universe multiverse deb-src ftp://ftp.bsd.md/pub/Ubuntu hardy-backports main restricted universe multiverse </source> Готово. Для проверки, запускаем <source lang="bash"> sudo apt-get update </source> и наслаждаемся :) Данный репозиторий поддерживается проектом [http://www.bsd.md BSD.md]. [[Category:Установка и настройка]] [[Category:Другие дистрибутивы]] 42fa2fc0ebd33116f1afe7557f8476696e809aa0 Debian: использование молдавского зеркала 0 98 199 2008-07-03T13:06:12Z OlegA 1 Новая: Debian - это, пожалуй, один из лучших дистрибутивов - и недвано появилась возможность обновлять систему с ... wikitext text/x-wiki Debian - это, пожалуй, один из лучших дистрибутивов - и недвано появилась возможность обновлять систему с молдавского зеркала, ускоряя процесс, и экономя траффик. В Debian GNU/Linux, как и других основанных на нём дистрибутивах, репозитории записываются в файле /etc/apt/sources.list – его нам и предстоит править. Сначала, создадим резервную копию существующих настроек: <source lang="bash"> sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup </source> Теперь, откроем файл для редактирования. * Для Gnome <source lang="bash"> gksudo gedit /etc/apt/sources.list </source> * Для KDE <source lang="bash"> kdesu kwrite /etc/apt/sources.list </source> * Для Xfce <source lang="bash"> gksudo mousepad /etc/apt/sources.list </source> Удаляем содержимое (если что - у нас есть резервная копия) Теперь, в пустой документ вставляем следующее: Для Debian Stable (Etch) <source lang="cfc"> deb http://apt-proxy.kirsan.md/debian/ etch main non-free contrib deb-src http://apt-proxy.kirsan.md/debian/ etch main non-free contrib # security deb http://apt-proxy.kirsan.md/debian-security/ etch/updates main non-free contrib deb-src http://apt-proxy.kirsan.md/debian-security/ etch/updates main non-free contrib }}} Для Debian Testing {{{ deb http://apt-proxy.kirsan.md/debian/ testing main non-free contrib deb-src http://apt-proxy.kirsan.md/debian/ testing main non-free contrib # security deb http://apt-proxy.kirsan.md/debian-security/ testing/updates main non-free contrib deb-src http://apt-proxy.kirsan.md/debian-security/ testing/updates main non-free contrib </source> Готово. Для проверки, запускаем <source lang="bash"> sudo aptitude update </source> и наслаждаемся :) Данное описание включает лишь стандартные репозитории, зеркало которых есть в Молдове. [[Category:Установка и настройка]] [[Category:Другие дистрибутивы]] 8cfff5e140de629bb6325bdab3d267ad9a099030 Заглавная страница 0 17 202 85 2008-07-03T13:09:42Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статья|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[:Category:Установка и настройка|Установка и настройка]] * [[:Category:Программное обеспечение]] * [[FAQ]] * [[:Category:Статья|Статьи]] * [[Статистика]] [[ro:Pagina_principală]] 0d5e1ddce25f4558639b6456ed2c7d855f62488c Заглавная страница 0 17 203 202 2008-07-03T13:09:57Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статья|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[:Category:Установка и настройка|Установка и настройка]] * [[:Category:Программное обеспечение|Программное обеспечение]] * [[FAQ]] * [[:Category:Статья|Статьи]] * [[Статистика]] [[ro:Pagina_principală]] ff41c68d2e555e90cee45f0717e1e1d72902fdf3 231 203 2008-07-14T13:46:55Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статья|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[:Category:Установка и настройка|Установка и настройка]] * [[:Category:Программное обеспечение|Программное обеспечение]] * [[FAQ]] * [[:Category:Статья|Статьи]] [[ro:Pagina_principală]] b9a0444b397c3883e2b89ed34b6be4590bd3db6a 258 231 2008-07-16T09:02:06Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статья|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[:Category:Установка и настройка|Установка и настройка]] * [[:Category:Программное обеспечение|Программное обеспечение]] * [[FAQ]] * [[:Category:Статьи|Статьи]] [[ro:Pagina_principală]] 1c6e05c01c4469e88803d15414862d4cc5d56fb2 259 258 2008-07-16T09:02:38Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статьи|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[:Category:Установка и настройка|Установка и настройка]] * [[:Category:Программное обеспечение|Программное обеспечение]] * [[FAQ]] * [[:Category:Статьи|Статьи]] [[ro:Pagina_principală]] a871b714112a5742b95281481b50deadedb9645a Категория:Программное обеспечение 14 99 204 2008-07-03T13:10:05Z OlegA 1 Новая: <nowiki></nowiki> wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 VMware FAQ 0 100 205 2008-07-03T13:15:14Z OlegA 1 Новая: {{Суперпользователь}} == Скачал rpm пакет, установил, а VMware Workstation не запускаеться, почему? == Для корректн... wikitext text/x-wiki {{Суперпользователь}} == Скачал rpm пакет, установил, а VMware Workstation не запускаеться, почему? == Для корректной конфигурации необходмо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте от root комманду: <source lang="bash"> #/usr/bin/vmware-config.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == vmware-config.pl завершается с ошибками, компилятор и исходники ядра установлены == Это случается если используется более новое ядро неподдерживаемое VMware Workstation. Следует обновить конфигуратор и модули ядра. Обновление, архив с именем ''vmware-any-any-updateXXX.tar.gz'' (где вместо XXX версия обновления), можно найти [http://knihovny.cvut.cz/ftp/pub/vmware/ здесь] или в приложениях к данной странице. Скачиваем архив во временный каталог <code>/tmp</code>). Для корректной конфигурации необходимо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте команды: <source lang="bash"> $ cd /tmp $ tar xf vmware-any-any-update*.tar* $ cd vmware-any-any-update*[0-9][0-9] # ./runme.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == Не могу печатать напрямую через порт LPT. Почему? == Это происходит из-за того: 1. у Вас нет прав на устройство /dev/parport* 2. драйвер ядра использует данное устройство. Для решения данной проблемы рекомендую создать два shell-файла... предположим один - print_start.sh, другой print_stop.sh <source lang="bash"> #!/bin/sh # print_start.sh # Start print driver (after VMware) su -c 'chmod 777 /dev/parport0 \ /sbin/modprobe lp' </source> <source lang="bash"> #!/bin/sh # print_stop.sh # Stop print driver (before VMware) su -c '/sbin/rmmod lp' </source> Перед запуском VMware Workstation выполняем print_stop.sh, после окончания работы запускаем print_start.sh. Не забудьте в конфигурации указать LPT порт и устройство на которое надо перенаправлять запросы. == Почему скорость передачи данных по сети такая низкая? == Как показа практика, все типы подключения медленные, корме hostonly. Рекомендуется использовать именно этот тип, если скорость критична. Не забывайте, что с помощью [Настройка NATa] Вы сможете настроить NAT. Кстати, hostonly + iptables (NAT) работают быстрее, чем использовать в VMware тип подключения NAT. == Начиная с ядра 2.6.22 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 113 attachment:vmware-any-any-update115.tar.gz == Начиная с ядра 2.6.24 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 116 attachment:vmware-any-any-update-116.tgz == Начиная с ядра 2.6.25 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 117 attachment:vmware-any-any-update117.tar.gz [[Category:Программное обеспечение]] [[Category:VMware]] 32cd3aac79fc08a94bb071ce6bf13bf0c345fc3d 206 205 2008-07-03T13:16:42Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Скачал rpm пакет, установил, а VMware Workstation не запускаеться, почему? == Для корректной конфигурации необходмо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте от root комманду: <source lang="bash"> #/usr/bin/vmware-config.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == vmware-config.pl завершается с ошибками, компилятор и исходники ядра установлены == Это случается если используется более новое ядро неподдерживаемое VMware Workstation. Следует обновить конфигуратор и модули ядра. Обновление, архив с именем ''vmware-any-any-updateXXX.tar.gz'' (где вместо XXX версия обновления), можно найти [http://knihovny.cvut.cz/ftp/pub/vmware/ здесь] или в приложениях к данной странице. Скачиваем архив во временный каталог <code>/tmp</code>). Для корректной конфигурации необходимо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте команды: <source lang="bash"> $ cd /tmp $ tar xf vmware-any-any-update*.tar* $ cd vmware-any-any-update*[0-9][0-9] # ./runme.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == Не могу печатать напрямую через порт LPT. Почему? == Это происходит из-за того: 1. у Вас нет прав на устройство /dev/parport* 2. драйвер ядра использует данное устройство. Для решения данной проблемы рекомендую создать два shell-файла... предположим один - print_start.sh, другой print_stop.sh <source lang="bash"> #!/bin/sh # print_start.sh # Start print driver (after VMware) su -c 'chmod 777 /dev/parport0 \ /sbin/modprobe lp' </source> <source lang="bash"> #!/bin/sh # print_stop.sh # Stop print driver (before VMware) su -c '/sbin/rmmod lp' </source> Перед запуском VMware Workstation выполняем print_stop.sh, после окончания работы запускаем print_start.sh. Не забудьте в конфигурации указать LPT порт и устройство на которое надо перенаправлять запросы. == Почему скорость передачи данных по сети такая низкая? == Как показа практика, все типы подключения медленные, корме hostonly. Рекомендуется использовать именно этот тип, если скорость критична. Не забывайте, что с помощью [[Настройка NATa]] Вы сможете настроить NAT. Кстати, hostonly + iptables (NAT) работают быстрее, чем использовать в VMware тип подключения NAT. == Начиная с ядра 2.6.22 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 113 attachment:vmware-any-any-update115.tar.gz == Начиная с ядра 2.6.24 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 116 attachment:vmware-any-any-update-116.tgz == Начиная с ядра 2.6.25 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 117 attachment:vmware-any-any-update117.tar.gz [[Category:Программное обеспечение]] [[Category:VMware]] 72fb6cd8b7cbdacbc1d65a3c1dc18ec9460ad0bc 227 206 2008-07-10T14:40:57Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Скачал rpm пакет, установил, а VMware Workstation не запускаеться, почему? == Для корректной конфигурации необходмо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте от root комманду: <source lang="bash"> #/usr/bin/vmware-config.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == vmware-config.pl завершается с ошибками, компилятор и исходники ядра установлены == Это случается если используется более новое ядро неподдерживаемое VMware Workstation. Следует обновить конфигуратор и модули ядра. Обновление, архив с именем ''vmware-any-any-updateXXX.tar.gz'' (где вместо XXX версия обновления), можно найти [http://knihovny.cvut.cz/ftp/pub/vmware/ здесь] или в приложениях к данной странице. Скачиваем архив во временный каталог <code>/tmp</code>). Для корректной конфигурации необходимо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте команды: <source lang="bash"> $ cd /tmp $ tar xf vmware-any-any-update*.tar* $ cd vmware-any-any-update*[0-9][0-9] # ./runme.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == Не могу печатать напрямую через порт LPT. Почему? == Это происходит из-за того: 1. у Вас нет прав на устройство /dev/parport* 2. драйвер ядра использует данное устройство. Для решения данной проблемы рекомендую создать два shell-файла... предположим один - print_start.sh, другой print_stop.sh <source lang="bash"> #!/bin/sh # print_start.sh # Start print driver (after VMware) su -c 'chmod 777 /dev/parport0 \ /sbin/modprobe lp' </source> <source lang="bash"> #!/bin/sh # print_stop.sh # Stop print driver (before VMware) su -c '/sbin/rmmod lp' </source> Перед запуском VMware Workstation выполняем print_stop.sh, после окончания работы запускаем print_start.sh. Не забудьте в конфигурации указать LPT порт и устройство на которое надо перенаправлять запросы. == Почему скорость передачи данных по сети такая низкая? == Как показа практика, все типы подключения медленные, корме hostonly. Рекомендуется использовать именно этот тип, если скорость критична. Не забывайте, что с помощью [[Настройка NATa]] Вы сможете настроить NAT. Кстати, hostonly + iptables (NAT) работают быстрее, чем использовать в VMware тип подключения NAT. == Начиная с ядра 2.6.24 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 116 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update-116.tgz?gda=2tkFOk4AAAAHyM8avp5Nz4-Iy8GLxFTBwa9-9pmXYSBmsF7hxxtTCmG1qiJ7UbTIup-M2XPURDSGXdvV5n_wsDUmPsx7kjwlI6ntQuOhZp5frm-yOmhQvw vmware-any-any-update-116.tgz] == Начиная с ядра 2.6.25 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 117 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update117b.tgz?gda=VsjkgE4AAAAHyM8avp5Nz4-Iy8GLxFTBwa9-9pmXYSBmsF7hxxtTCmG1qiJ7UbTIup-M2XPURDSGXdvV5n_wsDUmPsx7kjwl8W9eWXORVP64qo1T4egV3Q vmware-any-any-update117b.tgz] При запуске runme.pl отвечать '''[no]''' на вопросы о перезаписи. [[Category:Программное обеспечение]] [[Category:VMware]] 80c4b9ad9f6d89e47cd8e0307fdce0b25282ba21 228 227 2008-07-10T14:41:44Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Скачал rpm пакет, установил, а VMware Workstation не запускаеться, почему? == Для корректной конфигурации необходмо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте от root комманду: <source lang="bash"> #/usr/bin/vmware-config.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == vmware-config.pl завершается с ошибками, компилятор и исходники ядра установлены == Это случается если используется более новое ядро неподдерживаемое VMware Workstation. Следует обновить конфигуратор и модули ядра. Обновление, архив с именем ''vmware-any-any-updateXXX.tar.gz'' (где вместо XXX версия обновления), можно найти [http://knihovny.cvut.cz/ftp/pub/vmware/ здесь] или в приложениях к данной странице. Скачиваем архив во временный каталог <code>/tmp</code>). Для корректной конфигурации необходимо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте команды: <source lang="bash"> $ cd /tmp $ tar xf vmware-any-any-update*.tar* $ cd vmware-any-any-update*[0-9][0-9] # ./runme.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == Не могу печатать напрямую через порт LPT. Почему? == Это происходит из-за того: 1. у Вас нет прав на устройство /dev/parport* 2. драйвер ядра использует данное устройство. Для решения данной проблемы рекомендую создать два shell-файла... предположим один - print_start.sh, другой print_stop.sh <source lang="bash"> #!/bin/sh # print_start.sh # Start print driver (after VMware) su -c 'chmod 777 /dev/parport0 \ /sbin/modprobe lp' </source> <source lang="bash"> #!/bin/sh # print_stop.sh # Stop print driver (before VMware) su -c '/sbin/rmmod lp' </source> Перед запуском VMware Workstation выполняем print_stop.sh, после окончания работы запускаем print_start.sh. Не забудьте в конфигурации указать LPT порт и устройство на которое надо перенаправлять запросы. == Почему скорость передачи данных по сети такая низкая? == Как показа практика, все типы подключения медленные, корме hostonly. Рекомендуется использовать именно этот тип, если скорость критична. Не забывайте, что с помощью [[Настройка NATa]] Вы сможете настроить NAT. Кстати, hostonly + iptables (NAT) работают быстрее, чем использовать в VMware тип подключения NAT. == Начиная с ядра 2.6.24 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 116 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update-116.tgz vmware-any-any-update-116.tgz] == Начиная с ядра 2.6.25 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 117 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update117b.tgz vmware-any-any-update117b.tgz] При запуске runme.pl отвечать '''[no]''' на вопросы о перезаписи. [[Category:Программное обеспечение]] [[Category:VMware]] cf455d7d572a4e24910b4820f6387ec45d8ca406 Категория:VMware 14 101 207 2008-07-03T13:17:07Z OlegA 1 Новая: [[Category:Программное обеспечение]] wikitext text/x-wiki [[Category:Программное обеспечение]] a76e715bbab5094c3cfca14fa123e6f087db83b5 Skype 0 102 208 2008-07-03T13:21:42Z OlegA 1 Новая: == Что такое Skype? == '''Skype – это простая компьютерная программа, благодаря которой можно звонить другим а... wikitext text/x-wiki == Что такое Skype? == '''Skype – это простая компьютерная программа, благодаря которой можно звонить другим абонентам Skype во всем мире совершенно бесплатно.''' И несмотря на то что звонки вам не будут стоить ни копейки, мы гарантируем высочайшее качество связи. Если у ваших друзей, близких или деловых партнеров есть веб-камеры, вы сможете устраивать бесплатные видеоконференции. Вы также сможете звонить через Skype на обычные стационарные и мобильные телефоны по очень низким тарифам, и мы не взимаем дополнительных плат за подписку на наши услуги или активацию счета. == Skype — это больше, чем просто телефон == Skype включает в себя функции систем мгновенного обмена сообщениями, но позволяет проводить чаты с участием не двух, а 100 человек одновременно. Если какой-то чат содержит особенно важную для вас информацию, вы можете отметить его закладкой, для того чтобы потом быстро найти. Согласитесь, что это может быть очень полезно при многократных обсуждениях каких-нибудь вопросов с членами семьи и деловыми партнерами. == Skype — это тысячи собеседников == '''Найдите сетевые имена нужных вам абонентов и добавьте их''' в свою записную книжку. Это позволит вам видеть, когда они в сети, когда они заняты, и когда их нет на месте. '''Функция импортирования записной книжки''' поможет вам найти тех из ваших друзей, знакомых и деловых партнеров, кто уже пользуется Skype. И даже тем, у кого все еще нет нашей программы, вы все равно сможете звонить через Skype, если их телефоны находятся в вашей записной книжке Microsoft Outlook®. '''Общие группы''' будут очень полезны тем, у кого в записной книжке Skype много друзей и родных. Такие контакты можно просто объединить в легкоуправляемые группы. А благодаря общим группам ваши друзья или коллеги смогут поддерживать связь и получать уведомления о новых членах группы. == Просто работает и все... == Skype работает на большинстве платформ: '''Windows, Mac OS X, Linux и Pocket PC'''. Звонки, чат и пересылка файлов работает между всеми платформами. Прежде чем отправить сообщения в Интернет, Skype автоматически шифрует все данные (звонки, SMS, чаты, файлы), для того чтобы никто не смог перехватить их в сети. Skype не размещает у себя никакой рекламы, так что вас не будут беспокоить назойливые всплывающие окна и баннеры. == Полезно и недорого == Телефонные разговоры между пользователями Skype всегда будут оставаться бесплатными. Кроме этого, Skype позволяет делать массу других очень нужных и не дорогих (а очень даже дешевых) вещей. == Skype для Linux == Для использования Skype ваш компьютер должен соответствовать следующим минимальным требованиям: * 400 MHz процессор * 128 MB RAM * 10 MB свободного места на диске * Звуковая карта, динамики (наушники) и микрофон * Соединение с Интернетом (любой диал-ап: минимум 36.6 Kбс модем или любая широкополосная линия: кабель, DSL, и т.д.) == Установка Skype == Скачиваем RPM пакет для своей версии дистрибутива на официальном сайте: * [http://www.skype.com/download/skype/linux/choose/ Стабильная версия] * [http://www.skype.com/download/skype/linux/beta/choose/ Бета версия] * [http://repo.fedoramd.org/3rdparty/ Наше зеркало] {{Information|Вопрос совместимости с PulseAudio изучаем [http://pulseaudio.org/wiki/PerfectSetup#Skype здесь]}} [[Category:Программное обеспечение]] 84852ac3a8843acd6cdf1c27f645fe9bbc72d51b Шаблон:Information 10 55 209 133 2008-07-03T13:23:40Z OlegA 1 wikitext text/x-wiki <div style="color:#000000; border:solid 1px #A8A8A8; padding:0.5em 1em 0.5em 0.7em; margin:0.5em 0.5em 0.5em 0.5em; background-color:#FFFFFF;font-size:95%; vertical-align:middle;"> [[Image:Information.png|25px]] {{{1}}} </div> <noinclude><br />Used: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|Text}}</nowiki></noinclude> f4a321e981d755f48218fbdc7163a1424b4feb6a 210 209 2008-07-03T13:24:40Z OlegA 1 Отмена правки № 209 участника [[Служебная:Contributions/OlegA|OlegA]] ([[User_talk:OlegA|обсуждение]]) wikitext text/x-wiki [[Image:Information.png|25px]] {{{1}}} <noinclude><br />Used: <nowiki>{{</nowiki>{{PAGENAME}}<nowiki>|Text}}</nowiki></noinclude> 9379b2c875bb781f6a6a8b282b3438910fae9c90 Rtorrent 0 103 211 2008-07-03T13:31:11Z OlegA 1 Новая: {{Суперпользователь}} [http://libtorrent.rakshasa.no/ Домашняя страница] == Установка == === Подготовка === Ставить rtorrent ... wikitext text/x-wiki {{Суперпользователь}} [http://libtorrent.rakshasa.no/ Домашняя страница] == Установка == === Подготовка === Ставить rtorrent не просто, но очень просто, как и всё что находится в Fedora Extras: <source lang="bash"> # yum -y install rtorrent </source> Также можно найти более новую версию в [http://dag.wieers.com/ dag]: [http://dag.wieers.com/rpm/packages/rtorrent/ rtorrent] и [http://dag.wieers.com/rpm/packages/libtorrent/ libtorrent]. === Настройка === Создадим файл с настройками: <source lang="bash"> $ cat <<EOF >>~/.rtorrent.rc port_range = 10000-10005 check_hash = yes directory = /mnt/storage/torrent session = /mnt/storage/torrent tos = default upload_rate = 95 download_rate = 0 EOF </source> В этом примере, в домашнем каталоге пользователя (не обязательно ''root'', более того - желательно в каталоге пользователя отличного от ''root'') создам файл со следующими настройками: * проверять хеш торрентов после завершения закачки * прослушивать свободный порт из диапазона ''10000-10005'' * использовать сессии, и сохранять торренты и закачки в ''/mnt/storage/torrent'' * установить поле TOS исходящих IP пакетов по умолчанию для системы (но не по умолчанию для rtorrent). Если не определить эту настройку возможны задержки в комбинациями с некоторыми рутерами. * ограничить отдачу скоростью 95 kb/s * не ограничить закачку В список правил ''iptables'' добавляем строки (мы же хотим быть подключаемыми): <source lang="bash"> # iptables -A INPUT -p tcp -m state --state NEW -m multiport --destination-ports 10000:10005 -i $EXTIF -j ACCEPT # iptables -A INPUT -p udp -m state --state NEW -m multiport --destination-ports 10000:10005 -i $EXTIF -j ACCEPT </source> если наш клиент не имеет внешнего IP, тогда на рутере (а у нас там Linux, верно?) настраиваем DNAT <source lang="bash"> # iptables -t nat -A PREROUTING --dst $INET_IP -p tcp -m multiport --destination-ports 10000:10005 -j DNAT --to-destination $LANSERV_IP # iptables -t nat -A PREROUTING --dst $INET_IP -p udp -m multiport --destination-ports 10000:10005 -j DNAT --to-destination $LANSERV_IP </source> В этих примерах: ''EXTIF'' - имя устройства "глядящего" наружу. например ''eth0'' ''INET_IP'' - внешний IP адрес ''LANSERV_IP'' - IP адрес машины на которой запущен rtorrent клиент == Запуск == Теперь можно запускать rtorrent: <source lang="bash"> $ rtorrent </source> Управляем клиентом стрелками и: backspace - для добавления torrent'a (работает автозаполнение по Tab) return - то же самое, но торрент остаётся неактивным Ctrl-O Указать иной каталог для торрента. Ctrl-s Запустить закачку (опционально проверив хеш) Ctrl-d Остановить активную закачку, или удалить неактивный торрент. Ctrl-r Перепроверить хеш. Больше можно узнать в странице ''man rtorrent'' или [http://libtorrent.rakshasa.no/wiki/RTorrentUserGuide Руководстве пользователя]. '''''Внимание:''' скорее всего вы не сможете воспользоваться комбинациями клавиш Ctrl-s, Ctrl-q, так как они используются для управлением терминалом.'' Впрочем есть решение - перед запуском rtorrent (или screen) выполнить команды: <source lang="bash"> $ stty stop undef $ stty start undef </source> == Удаленное управление == Усложняем задачу: имеем удаленный сервачок (конечно на нем запущен Fedora Core 6), без видеокарты, но с сетевухой и хорошим каналом в интернет - грех подобным не воспользоваться ;) Для организации отключаемых сессий можно воспользоваться dtach или screen (обе можно найти в репо Fedora Core). Мы воспользуемся последним. <source lang="bash"> $ yum install screen </source> Хотя предположительно наш сервер не перезагружается, неплохо бы обеспечить запуск rtorrent при запуске системы: <source lang="bash"> # cat <<EOF >/etc/init.d/rtorrent #!/bin/bash # # Starting rtorrent in a screen session as daemon # Author: Vasile Vsx # # chkconfig: 2345 50 01 # # description: start rtorrent detached # processname: rtorrent # source function library . /etc/rc.d/init.d/functions # Source networking configuration. [ -r /etc/sysconfig/network ] && . /etc/sysconfig/network # Check that networking is up. [ "\${NETWORKING}" = "no" ] && exit 0 if [ -f /etc/sysconfig/rtorrent ]; then . /etc/sysconfig/rtorrent fi if [ -z \$RTORRENT_USER ]; then exit 0 fi RETVAL=0 start() { echo -n "Starting rtorrent: " daemon --user \$RTORRENT_USER /usr/bin/screen -dmS rtorrent /usr/bin/rtorrent \$OPTIONS RETVAL=\$? echo } stop() { echo -n "Stopping rtorrent: " killproc rtorrent -INT RETVAL=\$? echo } restart() { stop start } case "\$1" in start) start ;; stop) stop ;; restart) restart ;; status) status rtorrent ;; *) echo $"Usage: \$0 {start|stop|status|restart}" exit 1 esac exit $RETVAL EOF # chmod +x /etc/init.d/rtorrent # chkconfig --add rtorrent </source> Определяем пользователя используемого для запуска rtorrent <source lang="bash"> # cat <<EOF >/etc/sysconfig/rtorrent RTORRENT_USER=username EOF </source> запускаем и останавливает rtorrent командами: <source lang="bash"> # /sbin/service rtorrent start </source> и <source lang="bash"> # /sbin/service rtorrent stop </source> Подключаемся к запущенной сессии: <source lang="bash"> $ screen -r </source> отключаемся сочетанием клавиш: <code>Ctrl-a d</code> Также создаем простой скрипт (rt): <source lang="bash"> $ mkdir ~/bin && cat <<EOF >~/bin/rt #!/bin/sh stty stop undef stty start undef screen -rS rtorrent EOF chmod +x ~/bin/rt </source> [[Category:Программное обеспечение]] 9f4b19e399236dd9f83e714440bbe90e7c904869 BZFlag 0 104 212 2008-07-03T13:35:29Z OlegA 1 Новая: {{Суперпользователь}} == Что такое BZFlag == ''BZFlag'' – это командная многопользовательская 3D игра. Вы ездите ... wikitext text/x-wiki {{Суперпользователь}} == Что такое BZFlag == ''BZFlag'' – это командная многопользовательская 3D игра. Вы ездите на танке между пирамид и блоков, построенных на окруженной стеной большой арене, стреляете по вражеским танкам и собираете флаги для того, чтобы победить (если выбран тип игры capture-the-flag), или просто воюете со всеми другими участниками (тип игры free-for-all). Играть можно как по локальной сети, так и через интернет. Название возникло от "Battle Zone capture the Flag". Это одна из наиболее популярных свободных игр, которая продолжает развиваться и улучшаться до сих пор. В арсенале предусмотрено оружие и специальные средства различного типа, такие как самонаводящиеся снаряды, лазеры, невидимость, форсаж и многие другие. Все изменения в комплектации бронетехники происходят в зависимости от флага, который несет на себе танк, каждый из них отвечает за определенные апгрейды и дополнительные свойства. В игре доступно несколько типов сценария: захват штабного флага, охота за определенным танком, или же свободный режим, где победителем становится последний кто останется в живых на поле боя. Военные баталии разворачиваются на большом количестве доступных карт, созданных разработчиками или другими пользователями. Специальный плагин позволяет записывать все проводимые матчи. == Инструкция по подключению к серверу == == Минимальные аппаратные требования == Проверьте соответствие вашей системы требованиям: * Процессор: Pentium II-333 * Объем памяти: 64 Mb * Видеокарта: 3D-ускоритель с поддержкой OpenGL (8 Mb видеопамяти) {{Information|Настоятельно рекомендуется наличие аппаратного ускорителя OpenGL, но можно играть и с программной обработкой трехмерной графики.}} == Установка == Скачайте и установите клиент для игры BZFlag. == Fedora Linux == Установка из командной строки: <source lang="bash"> # yum install bzflag </source> Установка из графического установщика ('''pirut'''): ''Applications > Games > bzflag'' == Другие дистрибутивы == Игра работает на платформах Windows 95/98/NT/2000, Linux, Mac``OS 10.x, Irix, Solaris и других ОС. [http://my.bzflag.org/w/Download Скачать] == Запуск игры == Запустить игру можно из меню (''> Applications > Games > BZFlag'') или коммандной строки: <source lang="bash"> $ /usr/bin/bzflag </source> В главном меню выберите пункт ''Join game''. Введите ваши данные: 1. ''Callsing'' введите свой ник 2. ''Password'' введите свой пароль(любой) 3. ''Team'' выберите команду 4. ''Server'' введите '''bzflag.fedoramd.org''' 5. ''Port'' введите '''5154''' 6. ''Email'' введите свой e-mail ---- Источники: * [http://en.wikipedia.org/wiki/BZFlag BZFlag@Wikipedia] * [http://bzflag.org/ Официальный сайт] * [http://www.bzflag.at/ Сайт разработчика] [[Category:Программное обеспечение]] [[Category:Игры]] 63ce3ae493eecc5692dc2fb03bb760118407de8d 214 212 2008-07-03T13:37:39Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Что такое BZFlag == ''BZFlag'' – это командная многопользовательская 3D игра. Вы ездите на танке между пирамид и блоков, построенных на окруженной стеной большой арене, стреляете по вражеским танкам и собираете флаги для того, чтобы победить (если выбран тип игры capture-the-flag), или просто воюете со всеми другими участниками (тип игры free-for-all). Играть можно как по локальной сети, так и через интернет. Название возникло от "Battle Zone capture the Flag". Это одна из наиболее популярных свободных игр, которая продолжает развиваться и улучшаться до сих пор. В арсенале предусмотрено оружие и специальные средства различного типа, такие как самонаводящиеся снаряды, лазеры, невидимость, форсаж и многие другие. Все изменения в комплектации бронетехники происходят в зависимости от флага, который несет на себе танк, каждый из них отвечает за определенные апгрейды и дополнительные свойства. В игре доступно несколько типов сценария: захват штабного флага, охота за определенным танком, или же свободный режим, где победителем становится последний кто останется в живых на поле боя. Военные баталии разворачиваются на большом количестве доступных карт, созданных разработчиками или другими пользователями. Специальный плагин позволяет записывать все проводимые матчи. == Инструкция по подключению к серверу == == Минимальные аппаратные требования == Проверьте соответствие вашей системы требованиям: * Процессор: Pentium II-333 * Объем памяти: 64 Mb * Видеокарта: 3D-ускоритель с поддержкой OpenGL (8 Mb видеопамяти) {{Information|Настоятельно рекомендуется наличие аппаратного ускорителя OpenGL, но можно играть и с программной обработкой трехмерной графики.}} == Установка == Скачайте и установите клиент для игры BZFlag. == Fedora Linux == Установка из командной строки: <source lang="bash"> # yum install bzflag </source> Установка из графического установщика ('''pirut'''): ''Applications > Games > bzflag'' == Другие дистрибутивы == Игра работает на платформах Windows 95/98/NT/2000, Linux, Mac``OS 10.x, Irix, Solaris и других ОС. [http://my.bzflag.org/w/Download Скачать] == Запуск игры == Запустить игру можно из меню (''> Applications > Games > BZFlag'') или коммандной строки: <source lang="bash"> $ /usr/bin/bzflag </source> В главном меню выберите пункт ''Join game''. Введите ваши данные: # ''Callsing'' введите свой ник # ''Password'' введите свой пароль(любой) # ''Team'' выберите команду # ''Server'' введите '''bzflag.fedoramd.org''' # ''Port'' введите '''5154''' # ''Email'' введите свой e-mail ---- Источники: * [http://en.wikipedia.org/wiki/BZFlag BZFlag@Wikipedia] * [http://bzflag.org/ Официальный сайт] * [http://www.bzflag.at/ Сайт разработчика] [[Category:Программное обеспечение]] [[Category:Игры]] d79dfc6b28e5f836b8abbf120b143321232d6e8f 218 214 2008-07-03T13:48:36Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} [[Изображение:Bzflag_title.png]] == Что такое BZFlag == ''BZFlag'' – это командная многопользовательская 3D игра. Вы ездите на танке между пирамид и блоков, построенных на окруженной стеной большой арене, стреляете по вражеским танкам и собираете флаги для того, чтобы победить (если выбран тип игры capture-the-flag), или просто воюете со всеми другими участниками (тип игры free-for-all). Играть можно как по локальной сети, так и через интернет. Название возникло от "Battle Zone capture the Flag". Это одна из наиболее популярных свободных игр, которая продолжает развиваться и улучшаться до сих пор. В арсенале предусмотрено оружие и специальные средства различного типа, такие как самонаводящиеся снаряды, лазеры, невидимость, форсаж и многие другие. Все изменения в комплектации бронетехники происходят в зависимости от флага, который несет на себе танк, каждый из них отвечает за определенные апгрейды и дополнительные свойства. В игре доступно несколько типов сценария: захват штабного флага, охота за определенным танком, или же свободный режим, где победителем становится последний кто останется в живых на поле боя. Военные баталии разворачиваются на большом количестве доступных карт, созданных разработчиками или другими пользователями. Специальный плагин позволяет записывать все проводимые матчи. [[Изображение:Bzflag_screen01.jpg]] == Минимальные аппаратные требования == Проверьте соответствие вашей системы требованиям: * Процессор: Pentium II-333 * Объем памяти: 64 Mb * Видеокарта: 3D-ускоритель с поддержкой OpenGL (8 Mb видеопамяти) {{Information|Настоятельно рекомендуется наличие аппаратного ускорителя OpenGL, но можно играть и с программной обработкой трехмерной графики.}} == Установка == Скачайте и установите клиент для игры BZFlag. == Fedora Linux == Установка из командной строки: <source lang="bash"> # yum install bzflag </source> Установка из графического установщика ('''pirut'''): ''Applications > Games > bzflag'' == Другие дистрибутивы == Игра работает на платформах Windows 95/98/NT/2000, Linux, Mac``OS 10.x, Irix, Solaris и других ОС. [http://my.bzflag.org/w/Download Скачать] == Запуск игры == Запустить игру можно из меню (''> Applications > Games > BZFlag'') или коммандной строки: <source lang="bash"> $ /usr/bin/bzflag </source> В главном меню выберите пункт ''Join game''. [[Изображение:Bzflag joingame.jpg]] Введите ваши данные: # ''Callsing'' введите свой ник # ''Password'' введите свой пароль(любой) # ''Team'' выберите команду # ''Server'' введите '''bzflag.fedoramd.org''' # ''Port'' введите '''5154''' # ''Email'' введите свой e-mail ---- Источники: * [http://en.wikipedia.org/wiki/BZFlag BZFlag@Wikipedia] * [http://bzflag.org/ Официальный сайт] * [http://www.bzflag.at/ Сайт разработчика] [[Category:Программное обеспечение]] [[Category:Игры]] 9d4c24404dd5c5b57c28c4cfd00418e73d7d5380 219 218 2008-07-03T13:49:35Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} [[Изображение:Bzflag title.png]] == Что такое BZFlag == ''BZFlag'' – это командная многопользовательская 3D игра. Вы ездите на танке между пирамид и блоков, построенных на окруженной стеной большой арене, стреляете по вражеским танкам и собираете флаги для того, чтобы победить (если выбран тип игры capture-the-flag), или просто воюете со всеми другими участниками (тип игры free-for-all). Играть можно как по локальной сети, так и через интернет. Название возникло от "Battle Zone capture the Flag". Это одна из наиболее популярных свободных игр, которая продолжает развиваться и улучшаться до сих пор. В арсенале предусмотрено оружие и специальные средства различного типа, такие как самонаводящиеся снаряды, лазеры, невидимость, форсаж и многие другие. Все изменения в комплектации бронетехники происходят в зависимости от флага, который несет на себе танк, каждый из них отвечает за определенные апгрейды и дополнительные свойства. В игре доступно несколько типов сценария: захват штабного флага, охота за определенным танком, или же свободный режим, где победителем становится последний кто останется в живых на поле боя. Военные баталии разворачиваются на большом количестве доступных карт, созданных разработчиками или другими пользователями. Специальный плагин позволяет записывать все проводимые матчи. [[Изображение:Bzflag screen01.jpg|width="800" height="600"]] == Минимальные аппаратные требования == Проверьте соответствие вашей системы требованиям: * Процессор: Pentium II-333 * Объем памяти: 64 Mb * Видеокарта: 3D-ускоритель с поддержкой OpenGL (8 Mb видеопамяти) {{Information|Настоятельно рекомендуется наличие аппаратного ускорителя OpenGL, но можно играть и с программной обработкой трехмерной графики.}} == Установка == Скачайте и установите клиент для игры BZFlag. == Fedora Linux == Установка из командной строки: <source lang="bash"> # yum install bzflag </source> Установка из графического установщика ('''pirut'''): ''Applications > Games > bzflag'' == Другие дистрибутивы == Игра работает на платформах Windows 95/98/NT/2000, Linux, Mac``OS 10.x, Irix, Solaris и других ОС. [http://my.bzflag.org/w/Download Скачать] == Запуск игры == Запустить игру можно из меню (''> Applications > Games > BZFlag'') или коммандной строки: <source lang="bash"> $ /usr/bin/bzflag </source> В главном меню выберите пункт ''Join game''. [[Изображение:Bzflag joingame.jpg]] Введите ваши данные: # ''Callsing'' введите свой ник # ''Password'' введите свой пароль(любой) # ''Team'' выберите команду # ''Server'' введите '''bzflag.fedoramd.org''' # ''Port'' введите '''5154''' # ''Email'' введите свой e-mail ---- Источники: * [http://en.wikipedia.org/wiki/BZFlag BZFlag@Wikipedia] * [http://bzflag.org/ Официальный сайт] * [http://www.bzflag.at/ Сайт разработчика] [[Category:Программное обеспечение]] [[Category:Игры]] 850e9d9febda739e49749e143dcd3580c7453b31 220 219 2008-07-03T13:51:15Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} [[Изображение:Bzflag title.png]] == Что такое BZFlag == ''BZFlag'' – это командная многопользовательская 3D игра. Вы ездите на танке между пирамид и блоков, построенных на окруженной стеной большой арене, стреляете по вражеским танкам и собираете флаги для того, чтобы победить (если выбран тип игры capture-the-flag), или просто воюете со всеми другими участниками (тип игры free-for-all). Играть можно как по локальной сети, так и через интернет. Название возникло от "Battle Zone capture the Flag". Это одна из наиболее популярных свободных игр, которая продолжает развиваться и улучшаться до сих пор. В арсенале предусмотрено оружие и специальные средства различного типа, такие как самонаводящиеся снаряды, лазеры, невидимость, форсаж и многие другие. Все изменения в комплектации бронетехники происходят в зависимости от флага, который несет на себе танк, каждый из них отвечает за определенные апгрейды и дополнительные свойства. В игре доступно несколько типов сценария: захват штабного флага, охота за определенным танком, или же свободный режим, где победителем становится последний кто останется в живых на поле боя. Военные баталии разворачиваются на большом количестве доступных карт, созданных разработчиками или другими пользователями. Специальный плагин позволяет записывать все проводимые матчи. [[Изображение:Bzflag screen01.jpg|thumb]] == Минимальные аппаратные требования == Проверьте соответствие вашей системы требованиям: * Процессор: Pentium II-333 * Объем памяти: 64 Mb * Видеокарта: 3D-ускоритель с поддержкой OpenGL (8 Mb видеопамяти) {{Information|Настоятельно рекомендуется наличие аппаратного ускорителя OpenGL, но можно играть и с программной обработкой трехмерной графики.}} == Установка == Скачайте и установите клиент для игры BZFlag. == Fedora Linux == Установка из командной строки: <source lang="bash"> # yum install bzflag </source> Установка из графического установщика ('''pirut'''): ''Applications > Games > bzflag'' == Другие дистрибутивы == Игра работает на платформах Windows 95/98/NT/2000, Linux, Mac``OS 10.x, Irix, Solaris и других ОС. [http://my.bzflag.org/w/Download Скачать] == Запуск игры == Запустить игру можно из меню (''> Applications > Games > BZFlag'') или коммандной строки: <source lang="bash"> $ /usr/bin/bzflag </source> В главном меню выберите пункт ''Join game''. [[Изображение:Bzflag joingame.jpg]] Введите ваши данные: # ''Callsing'' введите свой ник # ''Password'' введите свой пароль(любой) # ''Team'' выберите команду # ''Server'' введите '''bzflag.fedoramd.org''' # ''Port'' введите '''5154''' # ''Email'' введите свой e-mail ---- Источники: * [http://en.wikipedia.org/wiki/BZFlag BZFlag@Wikipedia] * [http://bzflag.org/ Официальный сайт] * [http://www.bzflag.at/ Сайт разработчика] [[Category:Программное обеспечение]] [[Category:Игры]] cc1441cb5b9e8509c9ec995a17e93e1e3011b452 221 220 2008-07-03T13:56:12Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} <div align="center">[[Изображение:Bzflag title.png]]</div> == Что такое BZFlag == ''BZFlag'' – это командная многопользовательская 3D игра. Вы ездите на танке между пирамид и блоков, построенных на окруженной стеной большой арене, стреляете по вражеским танкам и собираете флаги для того, чтобы победить (если выбран тип игры capture-the-flag), или просто воюете со всеми другими участниками (тип игры free-for-all). Играть можно как по локальной сети, так и через интернет. Название возникло от "Battle Zone capture the Flag". Это одна из наиболее популярных свободных игр, которая продолжает развиваться и улучшаться до сих пор. В арсенале предусмотрено оружие и специальные средства различного типа, такие как самонаводящиеся снаряды, лазеры, невидимость, форсаж и многие другие. Все изменения в комплектации бронетехники происходят в зависимости от флага, который несет на себе танк, каждый из них отвечает за определенные апгрейды и дополнительные свойства. В игре доступно несколько типов сценария: захват штабного флага, охота за определенным танком, или же свободный режим, где победителем становится последний кто останется в живых на поле боя. Военные баталии разворачиваются на большом количестве доступных карт, созданных разработчиками или другими пользователями. Специальный плагин позволяет записывать все проводимые матчи. [[Изображение:Bzflag screen01.jpg|thumb]] == Минимальные аппаратные требования == Проверьте соответствие вашей системы требованиям: * Процессор: Pentium II-333 * Объем памяти: 64 Mb * Видеокарта: 3D-ускоритель с поддержкой OpenGL (8 Mb видеопамяти) {{Information|Настоятельно рекомендуется наличие аппаратного ускорителя OpenGL, но можно играть и с программной обработкой трехмерной графики.}} == Установка == Скачайте и установите клиент для игры BZFlag. == Fedora Linux == Установка из командной строки: <source lang="bash"> # yum install bzflag </source> Установка из графического установщика ('''pirut'''): ''Applications > Games > bzflag'' == Другие дистрибутивы == Игра работает на платформах Windows 95/98/NT/2000, Linux, Mac``OS 10.x, Irix, Solaris и других ОС. [http://my.bzflag.org/w/Download Скачать] == Запуск игры == Запустить игру можно из меню (''> Applications > Games > BZFlag'') или коммандной строки: <source lang="bash"> $ /usr/bin/bzflag </source> В главном меню выберите пункт ''Join game''. [[Изображение:Bzflag joingame.jpg]] Введите ваши данные: # ''Callsing'' введите свой ник # ''Password'' введите свой пароль(любой) # ''Team'' выберите команду # ''Server'' введите '''bzflag.fedoramd.org''' # ''Port'' введите '''5154''' # ''Email'' введите свой e-mail ---- Источники: * [http://en.wikipedia.org/wiki/BZFlag BZFlag@Wikipedia] * [http://bzflag.org/ Официальный сайт] * [http://www.bzflag.at/ Сайт разработчика] [[Category:Программное обеспечение]] [[Category:Игры]] 61419fbb62964f513e0246557b0f9a5732d36b57 Категория:Игры 14 105 213 2008-07-03T13:35:54Z OlegA 1 Новая: [[Category:Программное обеспечение]] wikitext text/x-wiki [[Category:Программное обеспечение]] a76e715bbab5094c3cfca14fa123e6f087db83b5 Файл:Bzflag title.png 6 106 215 2008-07-03T13:40:34Z OlegA 1 wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 Файл:Bzflag joingame.jpg 6 107 216 2008-07-03T13:40:35Z OlegA 1 wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 Файл:Bzflag screen01.jpg 6 108 217 2008-07-03T13:40:35Z OlegA 1 wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 Modern Hardware 0 22 222 78 2008-07-03T13:57:18Z OlegA 1 «[[Статья:Modern Hardware]]» переименована в «[[Modern Hardware]]» wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статья|Modern_Hardware]] c0dbdd45321d6bc8412c44fb0f5c47316c2a8570 254 222 2008-07-16T09:00:45Z OlegA 1 wikitext text/x-wiki ==== Зачем этот документ? ==== Собственно говоря, это просто попытка обобщить некоторый опыт накопленный за последние 5-6 лет общения с linux в плане разборок со всяческим железом разной степени стандартности, распространённости и стоимости. Данное произведение пишется вольным стилем в целях уменьшения геморроя потенциальных и реальных пользователей linux при покупке всяческих прибабасов для компьютера включая сам компьютер. Это наглая попытка убедить читателя покупать "правильное" железо и уменьшить количество воплей по поводу железа неправильного на форуме. Пишется исходя из местных реалий. Рассчитано на десктопные системы. ==== Основы - то что не прибавляет попугаев но уменьшает геморрой (к Linux отношения не имеет) ==== Итак - не экономьте на блоке питания. Не все БП одинаково полезны. Баги вызванные недостатком питания не очевидны и могут вылезти где угодно. Недостаточно качественное питание приводит к перегреву, сбоям и потерям данных. Следует помнить следующие вещи: * Существуем несколько вариантов стандарта ATX. В зависимости от стандарта, распределение нагрузки по линиям 5/12 вольт в различных стандартах подразумевается разное. Соответственно старый БП казалось бы достаточной мощности может на новой системе привести к неуловимым сбоям. Во избежание - БП должен уметь поддерживать точно тот же стандарт ATX что и материнская плата. Вариант когда БП умеет более новый ATX нежели нужен материнской плате может быть плохим. С течением времени источники нагрузки на БП меняются местами - разработчики VRM для CPU и GPU периодически берут за основу то 5V то 12V. Наличие потребности дополнительного питания видеокарт ещё более усложняет дело. HDD и приводы всегда кушают преимущественно 12V * Не верьте сенсорам. Для того, чтобы более-менее точно измерять напряжения, электроизмерительным прибору необходим эталон. Т.к. строить на материнских платах схему выдающую этот самый стабилизированный эталон слишком дорого - результаты измерения встроенными средствами мониторинга могут быть далеки от реальности, особенно если напряжения выдаваемые блоком питания ушли за пределы допустимых отклонений - любой китайский тестер будет полезнее * Если есть подозрения на качество БП - берём тестер и меряем напряжения на 5 и 12 вольтовых шинах - благо свободный коннектор всегда найдётся. Делается это на выключенном компьютере в спокойном его состоянии и под нагрузкой, желательно разного рода (HDD/CPU/GPU) - это безопасно. И не вздумайте мерить ток на молексах - есть все шансы спалить БП ;) В общем минимальные знания по электротехнике приветствуются. Не рекомендуется мерить напряжения на "голом" БП - во первых может и сгореть без нагрузки, во вторых измерения без нагрцзки заведомо недостоверны. * мой критерий выбора корпуса - если вам не страшно на него сесть, значит это не плохой корпус. (кстати корпусов типа "консервная банка" с нормальными БП я не видел, обратных примеров - масса, хотя конечно гарантий нет, надо смотреть глазами, см. в частности про версию ATX.) Толстое тяжелое железо таки гасит шумы и вибрацию ;) Охлаждение в современных корпусах зависит от пользователя - стоит подумать головой что куда и как будет в корпусе дуть. ИМХО идеальный вариант - когда корпус продувается насквозь пара 120mm вентиляторов стоящих спереди и сзади. ==== Процессор! ==== Не ввязываясь в священную войну AMD vs. Intel стоит отметить что расширения x86_64 пока создают больше проблем чем приносят пользы. Т.е. pure-64bit дистрибутивы зачастую урезаны в количестве софта, например нормальных портов Open``Office до сих пор нет. Разработчикам 64bit-дистрибутивов и пользователям пока приходится устраивать ритуальные танцы с бубном. Так что гнатся ли за 64bit - решайте сами. Будущее - за этой технологией. Но если собирайтесь делать апгрейд в течении 1-1.5 года - то можно обойтись и без этого. ==== Материнская плата - производитель, чипсет, размер и т.п. ==== * Как правило возможности MicroATX плат по тюнингу и разгону урезано относительно полноразмерных аналогов того же производителя * при выборе брэнда стоит обратить внимание на архивы старых прошивок этого производителя - если производитель не обновляет bios своих издели либо делает это 1-2 раза - значит вполне возможно что вас ждут проблемы совместимости и стабильности которые не будут иметь решения в принципе. Безглючных изделий не бывает - к примеру прошивки для серверов выходят чаще и дольше чем для большинства десктомных материнских плат - а ведь их разрабатывают старательнее и тестируют серьёзнее нежели десктопные продукты. * Определившись со списком допустимых производителей стоит обратить снимание на чипсет, его возможности и степень поддержки в linux - тут вам гугл в руки ;) следует помнить. что помимо чипсета на плате бывают сетевые и звуковые интерфейсы могут вполне и сторонние впаять по доброте душевной. Этот момент следует выяснить и опять-таки уточнить совместимость в гугле. ==== Видео! ==== Если вы собираетесь играться в игрушки или иным образом активно использовать 3D - то решайте сами. Никаких советов дабы не ввязываться в религиозную войну NVIDIA vs. ATI. Если же 3D вам не надо - современная встроенная графика имеет достаточно хорошее качество в режимах до 1280x1024. К сожалению DVI я на встроенных решениях не встречал. А так - вполне можно пользоваться. Неплохой вариант - встроенное видео + свободный PCI-Express x16 слот. Драйвера NVIDIA (пропитанный с nvidia.com) отличаются своим качеством и относительно просто прикручиваются. Хорошие в общем дрова ;) Драйвера ATI периодически вызывают массу геморроя. Говно вобщем,а не дрова. Раз на раз не приходится, то работают, то не работают, то работают но не полностью. Лично я бы брал старенький ATI Radeon 9200/9250 - поддерживается Xorg, в том числе 3D-ускорение и EXA - эффективная архитектура ускорения 2D что особо полезно для использования в комплекте со всякими полупрозрачными свистелками. Из недостатков - оно на AGP :( ==== HDD, SATA и т.п. ==== Опять же - тут тоже можно устроить holy war. Следует отметить следующие пункты: * Любой режим передачи данных быстрее UDMA100 бесполезен. Современные HDD на 7200rpm отдают данные со скоростью в лучшем случае 70 Mb - это в начале диска - в конце - примерно вдвое медленнее. * SATA 150 и SATA 300 соответственно одинаково полезны - в обоих случаях cкорость интерфейса не будет узким местом. * SATA-2 на сегодняшний день не существует. Официального стандарта нет. Производители понимают под SATA-2 SATA300 + расширения SATA в виде NCQ/TCQ и некоторых других. Самое полезное из т.н. SATA-2 это NCQ. * libata в стабильных ядрах linux пока не поддерживает NCQ :( * Избегайте материнских плат у которых SATA реализовано не средствами чипсета а средствами контроллера на плате - типа Silicon Image (Sil) 3112, 3114, или всяческих Via 64** - эти контроллеры зачастую висят на общей шине PCI 32bit/33Mhz и расходуют ее пропускную способность (которой всего-навсего 133Mb/sec) Увеличение кэша с 2Mb до 8Mb дает прирост производительности. Увеличение кэша до 16Mb заметного прироста не ИМХО пока даёт, кроме как определённые специфические операции. ==== Мышки, клавиатуры ==== Xorg умеет работать только с 5 кнопками мыши (три стандартных + прокрутка вверх-вниз) - сооствественно больше кнопок на мыше не нужно. USB vs. PS/2 - вопрос религии. ИМХО, т.к. мышка и клавиатура от компа почти никогда не отключается, то можно смело брать PS/2 - намного меньше потенциального геморроя. Для работы с мультимедийными кнопками клавиатуры существует специальный софт, так что можно относительно смело брать. Только будьте готовы, что каждой кнопке всё-таки придётся назначать действие самостоятельно. ==== Сеть ==== Встроенные в материнскую плату контроллеры бывают двух видов: встроенные в чипсет и распаянные отдельным чипом. Встроенные в чипсет - неплохой вариант. Распашные отдельным чипом- только 100Mbit. Если распаян отдельно 1Gbit - то помним что пропускная способность PCI будет узким местом. ==== Модемы ==== Аппаратные наименее геморройны. ИМХО, изделия типа ACorp EMSF, вполне доступны по цене. Из софтовых - рекомендуются Lucent 1646 и Intel 536EP, но это заведомом более геморройное решение, чем модем на COM-порту. ==== Мониторы ==== В свете появления моделей без кнопок - будьте осторожны - может оказаться что нечем отрегулировать яркость/контрастность. К счастью ещё хватает в продаже моделей с кнопками. Реализация софтового управления монитором под linux сейчас разрабатывается - но может оказаться, что с вашим новейшим монитором без кнопок, оно не работает. Так что - будьте осторожны ещё раз. ---- Источники: * http://www.linux.by/wiki/index.php/FAQ_modern_hardware [[Category:Статьи]] 58667e77bdc07d9e43773ed820b5c6998726e1d0 FAQ 0 110 224 2008-07-03T14:23:38Z OlegA 1 Новая: == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="ba... wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните {{{ # rpm -f /var/lib/rpm/__db.??? }}} или просто выполняем команду: {{{ # rpm --rebuilddb }}} ===== При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? ===== Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. Итак. В Fedora Core проблема может быть решена так: 1. Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) 2. Нажимаем кнопку "Учётные записи" 3. В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) 4. Заполняем поля в окне согласно подсказкам 5. Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" 6. В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 7. Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. ===== Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? ===== Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Итак. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: {{{ $ ipcalc 10.10.225.147/28 -m }}} и получаем строку вида {{{ NETMASK=255.255.255.240 }}} Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: {{{ $ ipcalc 10.10.225.147/28 -m -n -b }}} получаем {{{ NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 }}} Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: {{{ $ ipcalc 10.10.225.147 255.255.255.240 -n -b }}} А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: {{{ $ ipcalc 10.100.225.147 255.255.255.240 -p }}} получаем {{{ PREFIX=28 }}} ===== Как переименовать имя компьютера, когда система уже установлена? ===== Необходимо открыть и отредактировать файл /etc/sysconfig/network {{{ HOSTNAME= }}} ===== Как монтировать ресурс протокола Samba? ===== Под пользователем root или командой {{{sudo}}} выполнить следующее: {{{ # mount.cifs //server/ARHIV /mnt/smb -o username=user }}} Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и {{{mount}}} - {{{umount.cifs}}} Также можно воспользоваться утилитой fusesmb: {{{ # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ }}} Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: {{{ # /usr/sbin/usermod -a -G fuse <username> }}} ===== Как примонтировать раздел с файловой системой FAT32? ===== Под пользователем root или командой {{{sudo}}} выполнить следующее: {{{ # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet }}} Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: {{{ /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,io charset=koi8-r,utf8,showexec,noexec,shortname=lower, uid=user,gid=localuser,umask=002,quiet,users 0 0 }}} ===== Как примонтировать раздел с файловой системой NTFS? ===== Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: {{{ # yum install ntfs-3g }}} Под пользователем root или командой {{{sudo}}} выполнить следующее: {{{ # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force }}} Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: {{{ /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 }}} Если при загрузке файловая система не монтируется автоматически, выполните команду: {{{ # system-config-securitylevel-tui --selinux=permissive }}} Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: {{{ # /usr/sbin/usermod -a -G fuse <username> }}} Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): {{{ # yum install ntfs-config # ntfs-config }}} ===== Как отключить поддержку IPv6? ===== Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network {{{ NETWORKING_IPV6=no }}} 2. Отключаем модули в ядре. Добавляем в конец файла /etc/modprobe.conf: {{{ alias net-pf-10 off alias ipv6 off }}} 3. Отключаем файрвол: {{{ # chkconfig --level 35 ip6tables off }}} 4. Редактируем файл /etc/hosts. Удаляем записи начинающиеся с {{{::1}}} 5. Перегружаемся. ===== При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? ===== Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: {{{ # service yum-updatesd stop }}} Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): {{{ # chkconfig yum-updatesd off }}} ===== Как восстановить KMenu по -умолчанию? ===== Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu ===== Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? ===== Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: {{{ # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh }}} Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. ===== Я забыл пароль пользователя root. Как быть? ===== Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: {{{passwd}}}. Перегружаемся. ===== Что делать если не запускаются графические приложения от пользователя root? ===== Если при запуске от пользователя {{{root}}} вы видите в терминале подобное {{{ Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 }}} то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: {{{ $ xhost si:localuser:root }}} ===== Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 ===== Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] (или просто установив наш [:RU/Download#head-d258f61a899fcdce20b56b1afef1fd1ce432af47:fedoramd-release]) вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: {{{ # yum install enlightenment }}} Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой {{{ $ enlightenment_remote -lang-set en_US }}} мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. ===== Смена кодировки по-умолчанию в сервере MySQL ===== По умолчанию в сервере MySQL используется кодировка {{{latin1_swedish_ci}}}, что не совсем правильно. Решить эту пробелу можно добавив в отдел {{{[mysqld]}}} следующие строки: {{{ init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci }}} ==== Сторонний софт ==== ===== Есть ли возможность запуска 1С:Бухгалтерии? ===== Для полноценной многопользователькой работы необходимо преобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. ==== Полезное ==== ===== Как переименовать файлы из одного списка в имена из другого? ===== Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: {{{ $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done }}} ===== При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. ===== Попробуйте установить утилиту xvattr {{{ # yum install xvattr }}} и выполните команду: {{{ $ xvattr -a XV_SWITCHCRT -v }}} Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от {{{MergedFB}}}. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: {{{ Option "MergedFB" "off" }}} ===== MPlayer (qemu) ругается на RTC, сбита синхронизация. ===== Зададим новую (большую) пользовательскую частоту таймера: {{{ # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf }}} ===== При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? ===== Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: {{{ # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf }}} После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. {{{ # sysctl -w vm.overcommit_ratio=110 }}} Конечную настройку прописываем в ''/etc/sysctl.conf''. ===== Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. ===== Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: {{{-demuxer +aac}}}. Например: {{{ $ mplayer -demuxer +aac http://games.mcc.md:9000/trance }}} Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр {{{-loop 0}}}. ===== Как быстро и просто создать образ CD или DVD? ===== Для этого существует приложение dd. Синтаксис очень простой, есть два параметра {{{if=}}} (входной файл) и {{{of=}}} (выходной файл). Пример создания образа CD: {{{ $ dd if=/dev/cdrom of=~/cd.iso }}} Пример создания образа DVD: {{{ $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync }}} '''''__Примечание:__''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. ===== Как создать эмуляцию привода CD/DVD? ===== Для создания эмуляции необходим файл ISO. {{{ # mount -t iso9660 -o loop dvd_cd.iso /media/iso }}} где {{{dvd_cd.iso}}} - файл ISO, {{{/media/iso}}} - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. ===== Как поместить значок Audacious в трей? ===== В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. ===== Как скопировать AudioCD/VideoCD? ===== Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск {{{ $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc }}} будет создано 2 файла: data.bin и file.toc 2. Записываем диск {{{ $ cdrdao write --device /dev/sr0 --speed 40 file.toc }}} необходимо указать параметр --speed для скорости записи. ===== Многопользовательский режим в screen ===== Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл {{{.screenrc}}} и заполняем: {{{ multiuser on addacl <user> }}} где {{{<user>}}} - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: {{{ # chmod +s /usr/bin/screen }}} После запуска screen сессии: {{{ $ screen -dmS session01 }}} пользователь(и) которых мы перечислили в {{{.screenrc}}} могут восстановить сессию командой: {{{ $ screen -x <screen_user>/session01 }}} где {{{<screen_user>}}} - имя пользователя от которого запущена screen сессия. 6fb88997adafd271c5374c53f72ee839901f6b25 226 224 2008-07-09T12:45:53Z OlegA 1 wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> или просто выполняем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо преобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. 0104929b37ea97d951e99fe439a7e37ed274836b 233 226 2008-07-14T14:07:57Z OlegA 1 wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> или просто выполняем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо преобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. [[ro:FAQ/ro]] efd973e3bf7de2a992df142a2c87f1271ad03c75 Все что Вы хотели знать о SSH 0 111 229 2008-07-14T06:39:57Z OlegA 1 Новая: {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить уда... wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: ||Тип||Аргумент||Имя по умолчанию||Протокол||Пример заголовка|| ||RSA1||-t rsa1||identity||SSH 1 protocol only||1024 35 118118225938285...|| ||RSA||-t rsa||id_rsa||SSH 2 protocol only||ssh-dss AAAAB3nzaC1kc3M...|| ||DSA||-t dsa||id_dsa||SSH 2 protocol only||ssh-rsa AAAAB3NzaC1yc2E...|| Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна Identity``File, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключь кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться. ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию Remote``Forward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' ||Опции командной строки||-L local_listen_port:destination_host:destination_port|| ||Строки в файле конфигурации||Local``Forward local_listen_port:destination_host:destination_port|| ||local_listen_port is on||SSH client loopback interface|| ||destination_host is contacted from||SSH server host|| '''Удаленное перенаправление''' || Опции командной строки||-R remote_listen_port:destination_host:destination_port|| || Строки в файле конфигурации||Remote``Forward remote_listen_port:destination_host:destination_port|| || remote_listen_port is on||SSH server loopback interface|| ||destination_host is contacted from||SSH client host|| Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: || ||Command line option||Configuration file option|| ||Local``Forwards||-g||Gateway``Ports yes (in ~/.ssh/config or /etc/ssh/ssh_config)|| ||Remote``Forwards||(none available)||Gateway``Ports yes (in /etc/sshd_config)|| Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''Deny``Hosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> f65c5e58b7909b6b5fff08bcb9e2b0b59d6d8386 230 229 2008-07-14T13:44:19Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключь кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться. ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port:destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> 5775ddac3bef23b5996d2846db1ce924d31875da 244 230 2008-07-16T06:24:42Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключь кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться. ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port:destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> [[Category:Статья]] c7b378dcdb2a1946d21b67db6fad2644509fda7b 257 244 2008-07-16T09:01:54Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключь кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться. ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port:destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> [[Category:Статьи]] e93a915a4d6e755445d5bfdaaef401b801832274 FAQ/ro 0 112 232 2008-07-14T14:07:26Z OlegA 1 Новая: {{Superuser}} === Primii paşi === ==== Cum poţi afla data/ora locală? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ date </source> ==== Cum poţ afla vers... wikitext text/x-wiki {{Superuser}} === Primii paşi === ==== Cum poţi afla data/ora locală? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ date </source> ==== Cum poţ afla versiune kernel şi sistem de operare? ==== Pentru a afla versiune kernel, executaţi următoarea comandă în consolă: <source lang="bash"> $ uname -a </source> Detalii <code>man uname</code> Pentru a afla versiune sistem de operare, cunoaştem cîteva metode: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch <source> Sau dacă este instalat pachetul ''redhat-lsb'': <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> ==== Cît timp a lucrat SO (Sistem de operare)? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ uptime </source> ==== Cum poate fi setat Nautilus să deschidă directorul nou în aceeaşi fereastră? ==== Activaţi opţiunea ''System->Preferinţe->Administrare fişiere->Comportament->Deschide întotdeauna în fereastră de navigare'' ==== Cum de setat altă combinaţie taste de schimbare limbaj întroducere (En-Ro, En-Ru)? ==== Dacă utilizaţi KDE, dezactivaţi motorul control tastatură incorporat. Apoi edităm fişierul <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ro(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> şi restartăm server X. În acest caz avem modificare layout tastatură cu combinatia ''Ctrl-Shift'', şi două limbaje - engleză şi română compatibilă tastatură Microsoft. Altă variantă: română pentru programatori (diferă de layout ''us'' prin faptul că caracterele cu diacritice se introduc combinând tasta ALT dreaptă şi analogului latin al caracterului: exemplu AltGr-t pentru 'ţ', AltGr-s pentru 'ş', AltGr-q pentru 'â'), rusă, modificare - tasta WinKey dreată. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> ==== Cum de lansat o comandă sau aplicaţie sin consolă cu drepturile utilizatorului root (Superutilizator) ==== În consolă executaţi <source lang="bash"> $ su - </source> şi introduceţi parolă utilizator ''root''. Sau indicînd comandă imediat <source lang="bash"> $ su - -c 'command' </source> unde ''command'' - comanda sau aplicaţie. O alternativă ar fi setarea sistemului ''sudo'' <code>man sudo</code> se recomandă pentru documentare. Ca rezultat s-ar putea executa un set anumit, sau toate comenzile cu drepturile utilizatorului ''root'', introducind sau nu parola prefixînd comanda necesară cu ''sudo'', spre exemplu <source lang="bash"> $ sudo /sbin/fdisk -l </source> Exemplu de configurare ''sudo'' pentru utilizatorul ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> noile regului pentru utilizator vor fi active cu următoarea intrare sa în sistem (nu şi în cazul dacă utilizatorul posedă deja grupa ''wheel''). ==== Cum de activat masă de lucru stil 3D ? ==== Fedora Core 5 şi mai noi suporta efecte 3D pentru manager de ferestre prin intermediul tehnologii ''AIGLX''. Iniţial ne asigurăm că placa video/driverul utilizat [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 suportă AIGLX]. Pentru lansare ''compiz'' ca manager de ferestre activati opţiunea ''System->Preferinţe->Aspect->Desktop Effects->Enable Desktop Effects'' . De asemenea puteţi instala pachetul ''compiz-fusion'', care suportă setul extins de efecte. Doar instalaţi metapachetul ce corespunde mediului de lucru utilizat: <source lang="bash"> # yum install compiz-gnome ccsm </source> sau <source lang="bash"> # yum install compiz-kde ccsm </source> Apoi îl lansati din meniul ''Aplicaţii''. ==== Unde pot fi găsite programe (pachete) pentru Fedora? ==== O mulţime de programe pot fi găsite în repozitorii standard: Fedora Everything (versiuni mai noi de Fedora 7) şi [http://fedoraproject.org/wiki/Extras Fedora Extras] (versiuni mai vechi de Fedora 7). De asemenea în Internet pot fi găsite o mulţime de repozitorii neoficiale. Printre cele mai populare se numără: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] O listă mai completă o găsiti pe pagina proiectului [http://rpmfusion.org/FedoraThirdPartyRepos RPMFusion]. În aceste repozitorii veţi găsi multe pachete adiţionale care nu pot fi incluse în repozitorii standard, dar sînt compatibile cu acestea. Există motoare de căutare pe pachete ''RPM'' utilizate în sisteme RedHat/Fedora: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] ==== Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? ==== Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> ==== Cum de setat adresa serverului proxy utilizat? ==== În mediu ''GNOME'' din meniul "Sistem->Preferinţe->Internet şi reţea->Proxy reţea". Sau în caz general din consolă, adăugaţi în fişier profil shell <code>~/.bash_profile</code> rîndurile: <source lang="cfc"> http_proxy=http://proxy:3128 export http_proxy </source> sau <source lang="cfc"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> La următoarea întrare în sistem setările vor fi active. Atenţie: unele aplicaţii au metode proprii de a defini serverul proxy utilizat. De exemplu ''yum'' cere înregistrare tip <source lang="cfc"> proxy=http://proxy:3128 </source> în fişierul său de configuraţie. ==== Cum de lansat comanda cu anumite variabile împrejurării dezactivate (env)? ==== Pentru dezactivarea unei variabile, ex. http_proxy, executăm construcţia tip: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> unde <code>[CMD]</code> - este comanda necesară. ==== Cum poate fi instalat Gecko pentru wine ==== 1. Descărcăm versiune recentă wine_gecko.cab de pe [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net] în dosarul <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Dezarhivăm cu ajutorul cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Reîncărcăm wine: <source lang="bash"> $ wineboot -r </source> ==== Cum poate fi redenumită o grupă de volume LVM ==== Pentru redenumirea LVM Group sistemului activ ne încărcăm de pe alt sistem care nu va folosi acest grup, spre exemplu Fedora LiveCD sau Fedora Install în mod ''rescue''. În ultimul caz ignorăm propunera de a monta sistemele de fisiere existente. Executăm comenzile în consolă: 1. Rulăm consola lvm: <source lang="bash"> # lvm </source> 2. Verificăm vizibilitatea grupelor: <source lang="bash"> lvm> vgdisplay </source> 3. Dezactivăm grupele active: <source lang="bash"> lvm> vgchange -a n </source> 4. şi redenumim: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Activăm grupele: <source lang="bash"> lvm> vgchange -a y </source> 6. Părăsim consola lvm: <source lang="bash"> lvm> exit </source> '''''Atenţie:''' după redenumirea, este necesar de a corecta înregistrările afectate din /etc/fstab şi de a crea din nou initrd din dosarul /boot indicând parametrul --fstab='' <source lang="bash"> # mkinitrd --fstab='' /boot/initrd-2.6.25-1.fc9.x86_64.img 2.6.25-1.fc9.x86_64 </source> === Rezolvare probleme tip === ==== rpm se blochează la toate operaţiile de la utilizatorul root. Sub utilizatorul neprivilegiat lucrează corect ==== Posibilă cauză - eronarea bazei de date RPM. În consolă executăm <source lang="bash"> # rpm --rebuilddb </source> dacă nu va ajuta, încercăm: <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> ==== Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? ==== Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Итак. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> ==== Cum poate fi schimbat nume host propriu după instalarea sistemului? ==== Edităm fişierul /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> ==== Cum de accesat resurse reţea Samba (Windows shares)? ==== Dacă cunoaştem numele complet a resursei executăm comanda (cu drepturile utilizatorulu ''root''): <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Directorul /mnt/smb trebuie creat preventiv. Pentru demontare utilizăm <code>umount.cifs</code> Pentru accesare uşoară a resurselor reţelei locale fără autentificare putem utiliza ''fusesmb'': <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Deoarce ''fusesmb'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> ==== Cum de accesat un sistem de fişiere tip FAT32? ==== Executăm comanda: <source lang="bash"> # mount -t vfat /dev/sdaX /mnt/disk_fat -o quiet </source> Directorul ''/mnt/disk_fat'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> ==== Cum de accesat sistem de fişiere tip NTFS? ==== Pentru access citire/scriere utilizăm pachetul ''ntfs-3g''. Se instalează standard (în majoriatea cazurilor pachetul dat deja va fi instalat): <source lang="bash"> # yum install ntfs-3g </source> Executăm comanda: <source lang="bash"> # mount -t ntfs /dev/sdaX /mnt/disk_ntfs -o force </source> Directorul ''/mnt/disk_ntfs'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Versiunile vechi nu permiteau montarea autmată la pornire sistem cu protecţie SELinux în mod Enforce. Pentru trecerea în mod permisiv se poate utiliza comanda: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Deoarce ''ntfs-3g'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Există şi o alternativă mai uşoară - instalăm şi rulăm utilitarul ''ntfs-config'': <source lang="bash"> # yum install ntfs-config </source> ==== Cum de dezactivat suport IPv6? ==== Executăm următorii paşi (cu drepturile utilizatorului root). 1. Edităm fişierul /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Dezactivăm firewall ipv6: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Edităm /etc/hosts. Eliminăm înregistrările ce se încem cu <code>::1</code> 4. Restartăm. ==== При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? ==== Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> ==== Как восстановить KMenu по -умолчанию? ==== Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu ==== Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? ==== Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. ==== Я забыл пароль пользователя root. Как быть? ==== Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. ==== Что делать если не запускаются графические приложения от пользователя root? ==== Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> ==== Schimbare set de caractere implicit serverului MySQL ==== Standard serverul MySQL utilizează set de caractere <code>latin1_swedish_ci</code>, ceea ce crează uneori probleme pentru scripturi imperfecte. Pentru soluţionare edităm fişierul /etc/my.cnf, rubrica <code>[mysqld]</code>: <source lang="cfc"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Software non-nativ === ==== Cum de lansat 1С:Бухгалтерия? ==== Pentru lucrul în mod multiutilizator este necesar de utilizat [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft] (non-free software). Fedora include pachetul wine care de asemenea poae lansa 1С:Бухгалтерия. Versiunile 8.0 şi 8.1 sînt compatibile cu Wine standard din distribuţie. Începînd cu versiunea 8.1 este disponibil clasterul nativ pe Linux cu support PostgreSQL. === Util === ==== Cum de redenumit set de fişiere dintr-o listă de nume în altă? ==== Exemplu: avem 20 fisiere video în director avi/, şi 20 fişiere cu subtitrări în directorul sub/. Atunci: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> ==== При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. ==== Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> ==== MPlayer (qemu) ругается на RTC, сбита синхронизация. ==== Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> ==== При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? ==== Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. ==== Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. ==== Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от IceCast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. ==== Cum de creat o imagine ISO9660 a unui DataCD sau DVD? ==== Utilizăm comanda standard '''dd'''. Sintaxa este simplă - indicăm fişiere de intrare şi ieşire ca parametrii {{{if=}}} (de intrare) şi {{{of=}}} (de ieşire). Exemplu creare imagine ISO CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Exemplu creare imagine DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Notă:''''' parametrul ''conv=noerror,sync'' este necesar la copierea unui mediu cu errori. '''dd''' nu se va opri la erori de citire, inserând date nule în locul sectorului eronat. ==== Cum de operat cu conţinutul imaginii ISO a unui CD/DVD? ==== Fişierul ISO9660 poate fi montat cu comanda. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> unde <code>dvd_cd.iso</code> - fişier ISO, <code>/media/iso</code> - directorul unde va fi accesat (trebuie creat preventiv). Există şi instrumente grafice: isomaster, AcetoneISO, şi de consolă: fuseiso, nrg2iso care permit operarea imaginilor ISO9660 utilizatorilor neprivelegiaţi. ==== Cum de ascuns Audacious în zona de notificare (tray)? ==== Activaţi pluginul general ''Status Icon''. Întră in componenţa standard versiunilor recente ''Audacious''. ==== Cum de copiat un disc AudioCD/VideoCD? ==== Comanda ''dd'' nu poate fi utilizată în asemenea cazuri. Trebuie utilizat pachetul cdrdao. 1. Cream fisier imagine <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> vor fi create 2 fişiere: data.bin şi file.toc 2. Înregistrăm disc copie din fişiere imagine <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> parametrul ''--speed'' indică viteza de înscriere. ==== Modul multiutilizator în screen ==== Este necesar dacă o sesiune să fie accesibilă pentru mai mulţi utilizatori în mod concurent. '''screen'' implicit activează în modul unui singur utilizator - numai utilizatorul care a activat sesiunea poate să se conecteze la dînsa. Pentru mod multiutilizator executăm paşii. În director acasă a utilizatorului ce va deţine sesiunea creăm fişierul <code>.screenrc</code> şi-l completăm: <pre> multiuser on addacl <user> </pre> unde <code><user></code> - utilizatorul, ce va avea access la această sesiune screen. Mai mulţi utilizatori pot fi adăugaţi separîndu-i numele prin virgulă. Activăm ''setuid'' bitul pe executabilul screen: <source lang="bash"> # chmod +s /usr/bin/screen </source> Lansăm sesiunea: <source lang="bash"> $ screen -dmS session01 </source> Acum utilizatorii enumeraţi în <code>.screenrc</code> se pot conecta prin comanda: <source lang="bash"> $ screen -x <screen_user>/session01 </source> unde <code><screen_user></code> - nume utilizator ce deţine sesiunea. ==== Cum de modificat adresa MAC pentru o interfaţă Ethrenet? ==== Pentru a atribui temporar interfeţei cu numele eth4 adresa 00:2E:13:A1:81:77 executăm una din comenzile: <source lang="bash"> # /sbin/ip link set dev eth4 address 00:2E:13:A1:81:77 # /sbin/ifconfig eth4 hw ether 00:2E:13:A1:81:77 </source> Pentru seta adresa automat la pornire sistem, în fişierul /etc/sysconfig/networking/devices/ifcfg-eth4 adaugăm rîndul: <source lang="bash"> MACADDR=00:2E:13:A1:81:77 </source> [[ru:FAQ]] dc5896626e847206e13e7772b84977467bbc45a5 Pagina principală 0 3 234 122 2008-07-14T14:09:17Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Bine aţi venit în lume Fedora Linux.''' Aici puteţi găsi întrebări fracvente şi soluţii, exemple de setări şi sfaturi aplicabile nu doar la [[Fedora Linux/ro|Fedora Linux]], dar şi la alte distribuţii Linux. De asemenea avem [[:Category:Articole|articole]], care vă vor ajuta să descoperiţi diversa lume a sistemelor Linux. Site-ul este bazat pe tehnologia [[wikipedia:ro:Wiki|Wiki]]. După înregistrare veţi putea schimba parametrii utilizator, a edita şi crea pagini. Funcţie utilă - [[Special:Search|căutare]]. Căutare se execută peste tot conţinutul site-ului. == Secţii == * [[:Category:Instalare şi configurare|Instalare şi configurare]] * [[Programe]] * [[FAQ/ro|FAQ]] * [[:Category:Articole|Articole]] [[ru:Заглавная_страница]] 064085e40154fad2075cc81efae4971ea62aafbc Участник:Jekader 2 113 236 2008-07-14T14:20:27Z OlegA 1 Новая: http://jekader.fedoramd.org ... wikitext text/x-wiki http://jekader.fedoramd.org ... 08bff215cd567e5fdf199e66039e023c4bd6d30d Screen 0 114 242 2008-07-15T15:00:03Z Jekader 4 Новая: GNU Screen - это мультиплексор терминалов. Он позволяет в одном окне терминала пользоваться сразу несколь... wikitext text/x-wiki GNU Screen - это мультиплексор терминалов. Он позволяет в одном окне терминала пользоваться сразу несколькими сессиями и перемещаться между ними, подобно оконному менеджеру X Window System. Благодаря этому, к примеру, через одно SSH подключение можно управлять сразу несколькими программами на удалённой машине. Ещё одна важная функция screen - возможность отключения от сеанса, с последующим подключением к нему в другое время, и даже из другого места. При этом, существует специальный буфер, в который сохраняется вывод программ в то время, пока сессия отключена - поэтому её можно просмотреть после подключения. Третья интересная возможность - это одновременное подключение нескольких клиентов к одной терминальной сессии, и совместное управление ею. --- Установить screen просто, утилита присутствует в большинстве дистрибутивов. Для Fedora просто наберите yum install screen запустите screen screen вы попадёте в новую терминальную консоль. Запустите там какую-то программу. Теперь, можно отключить сессию - это делается нажатием клавиш Ctrl+A, а затем - D. появится надпись [detached] и вы снова попадёте в исходную консоль. Сеанс screen, и запущенное в нём приложение продолжают выполняться в фоновом режиме. Чтобы снова зайти в этот сеанс, наберите screen -r чтобы завершить сеанс screen - закройте запущенную в нём программу, если такая имеется - и, как и в обычной консоли - наберите exit Но что делать, если хочется запускать в фоне две, три, или более программ? Для этого достаточно дать сессиям названия. Например, можно ввести screen name0 запустить программу, отключить сессию по C-a d - затем, ввести screen name1 и получить ещё один сеанс. соответственно, при желании вновь зайти в сеанс, его назване нужно указать. screen -r name0 Есть множество параметров как командной строки, так и внутри сеанса screen - их можно почитать? набрав man screen Лично я для запуска screen пользуюсь параметром -RD screen -RD name в данном случае, если сессии нет - она создастся. Если сессия есть, и она находится в фоне - то к ней будет произведено подключение. И даже если сессия сейчас активна, произойдёт её отключение от предыдущего терминала, и подключение к нынешнему. Вот так вот. 0b145d233004c123b1664c21d72af57b845457bc 243 242 2008-07-16T06:02:31Z OlegA 1 Преоброзование в вики-стиль wikitext text/x-wiki {{Суперпользователь}} [[wikipedia:ru:GNU|GNU]] Screen - это мультиплексор терминалов. Он позволяет в одном окне терминала пользоваться сразу несколькими сессиями и перемещаться между ними, подобно оконному менеджеру X Window System. Благодаря этому, к примеру, через одно SSH подключение можно управлять сразу несколькими программами на удалённой машине. Ещё одна важная функция screen - возможность отключения от сеанса, с последующим подключением к нему в другое время, и даже из другого места. При этом, существует специальный буфер, в который сохраняется вывод программ в то время, пока сессия отключена - поэтому её можно просмотреть после подключения. Третья интересная возможность - это одновременное подключение нескольких клиентов к одной терминальной сессии, и совместное управление ею. ---- Установить screen просто, утилита присутствует в большинстве дистрибутивов. Для Fedora просто наберите: <source lang="bash"> # yum install screen </source> запустите screen <source lang="bash"> $ screen </source> вы попадёте в новую терминальную консоль. Запустите там какую-то программу. Теперь, можно отключить сессию - это делается нажатием клавиш Ctrl+A, а затем - D. появится надпись '''[detached]''' и вы снова попадёте в исходную консоль. Сеанс screen, и запущенное в нём приложение продолжают выполняться в фоновом режиме. Чтобы снова зайти в этот сеанс, наберите <source lang="bash"> $ screen -r </source> чтобы завершить сеанс screen - закройте запущенную в нём программу, если такая имеется - и, как и в обычной консоли - наберите <code>exit </code> Но что делать, если хочется запускать в фоне две, три, или более программ? Для этого достаточно дать сессиям названия. Например, можно ввести <source lang="bash"> $ screen name0 </source> запустить программу, отключить сессию по C-a d - затем, ввести <source lang="bash"> $ screen name1 </source> и получить ещё один сеанс. соответственно, при желании вновь зайти в сеанс, его назване нужно указать. <source lang="bash"> $ screen -r name0 </source> Есть множество параметров как командной строки, так и внутри сеанса screen - их можно почитать? набрав <source lang="bash"> $ man screen </source> Лично я для запуска screen пользуюсь параметром -RD <source lang="bash"> $ screen -RD name </source> в данном случае, если сессии нет - она создастся. Если сессия есть, и она находится в фоне - то к ней будет произведено подключение. И даже если сессия сейчас активна, произойдёт её отключение от предыдущего терминала, и подключение к нынешнему. Вот так вот. [[Category:Статья]] 7ba24b9f3e323c02fd288bda6024afa6ca8235fe 256 243 2008-07-16T09:01:30Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} [[wikipedia:ru:GNU|GNU]] Screen - это мультиплексор терминалов. Он позволяет в одном окне терминала пользоваться сразу несколькими сессиями и перемещаться между ними, подобно оконному менеджеру X Window System. Благодаря этому, к примеру, через одно SSH подключение можно управлять сразу несколькими программами на удалённой машине. Ещё одна важная функция screen - возможность отключения от сеанса, с последующим подключением к нему в другое время, и даже из другого места. При этом, существует специальный буфер, в который сохраняется вывод программ в то время, пока сессия отключена - поэтому её можно просмотреть после подключения. Третья интересная возможность - это одновременное подключение нескольких клиентов к одной терминальной сессии, и совместное управление ею. ---- Установить screen просто, утилита присутствует в большинстве дистрибутивов. Для Fedora просто наберите: <source lang="bash"> # yum install screen </source> запустите screen <source lang="bash"> $ screen </source> вы попадёте в новую терминальную консоль. Запустите там какую-то программу. Теперь, можно отключить сессию - это делается нажатием клавиш Ctrl+A, а затем - D. появится надпись '''[detached]''' и вы снова попадёте в исходную консоль. Сеанс screen, и запущенное в нём приложение продолжают выполняться в фоновом режиме. Чтобы снова зайти в этот сеанс, наберите <source lang="bash"> $ screen -r </source> чтобы завершить сеанс screen - закройте запущенную в нём программу, если такая имеется - и, как и в обычной консоли - наберите <code>exit </code> Но что делать, если хочется запускать в фоне две, три, или более программ? Для этого достаточно дать сессиям названия. Например, можно ввести <source lang="bash"> $ screen name0 </source> запустить программу, отключить сессию по C-a d - затем, ввести <source lang="bash"> $ screen name1 </source> и получить ещё один сеанс. соответственно, при желании вновь зайти в сеанс, его назване нужно указать. <source lang="bash"> $ screen -r name0 </source> Есть множество параметров как командной строки, так и внутри сеанса screen - их можно почитать? набрав <source lang="bash"> $ man screen </source> Лично я для запуска screen пользуюсь параметром -RD <source lang="bash"> $ screen -RD name </source> в данном случае, если сессии нет - она создастся. Если сессия есть, и она находится в фоне - то к ней будет произведено подключение. И даже если сессия сейчас активна, произойдёт её отключение от предыдущего терминала, и подключение к нынешнему. Вот так вот. [[Category:Статьи]] c6b520407fdae6111b0c76d91364a1a1d58dd43d Справка:Справка по редактированию 12 18 245 178 2008-07-16T06:27:53Z OlegA 1 «[[Справка:Справка по редактированию]]» переименована в «[[Справка по редактированию]]» wikitext text/x-wiki == Редактирование == * [[mediawikiwiki:Help:Editing pages/ru|Редактирование страниц]] * [[mediawikiwiki:Help:Starting a new page/ru|Создание новой страницы]] * [[mediawikiwiki:Help:Formatting/ru|Форматирование]] * [[mediawikiwiki:Help:Links/ru|Ссылки]] === Расширенное редактирование === * [[mediawikiwiki:Help:Images/ru|Изображения]] * [[mediawikiwiki:Help:Tables/ru|Таблицы]] * [[mediawikiwiki:Help:Managing files/ru|Управление файлами]] * [[mediawikiwiki:Help:Moving a page/ru|Перемещение (переименование) страниц]] * [[mediawikiwiki:Help:Redirects/ru|Перенаправления]] * [[mediawikiwiki:Help:Deleting a page/ru|Удаление страниц]] * [[mediawikiwiki:Help:Variables/ru|Переменные]] * [[mediawikiwiki:Help:Namespaces/ru|Пространства имён]] * [[mediawikiwiki:Help:Interwiki linking/ru|Интервики-ссылки]] [[Category:Справка|Справка по редактированию]] f3d46ea3385ad880bb7ecacedf8651ccc95d5cd6 247 245 2008-07-16T06:30:47Z OlegA 1 «[[Справка по редактированию]]» переименована в «[[Справка:Справка по редактированию]]» поверх перенаправления wikitext text/x-wiki == Редактирование == * [[mediawikiwiki:Help:Editing pages/ru|Редактирование страниц]] * [[mediawikiwiki:Help:Starting a new page/ru|Создание новой страницы]] * [[mediawikiwiki:Help:Formatting/ru|Форматирование]] * [[mediawikiwiki:Help:Links/ru|Ссылки]] === Расширенное редактирование === * [[mediawikiwiki:Help:Images/ru|Изображения]] * [[mediawikiwiki:Help:Tables/ru|Таблицы]] * [[mediawikiwiki:Help:Managing files/ru|Управление файлами]] * [[mediawikiwiki:Help:Moving a page/ru|Перемещение (переименование) страниц]] * [[mediawikiwiki:Help:Redirects/ru|Перенаправления]] * [[mediawikiwiki:Help:Deleting a page/ru|Удаление страниц]] * [[mediawikiwiki:Help:Variables/ru|Переменные]] * [[mediawikiwiki:Help:Namespaces/ru|Пространства имён]] * [[mediawikiwiki:Help:Interwiki linking/ru|Интервики-ссылки]] [[Category:Справка|Справка по редактированию]] f3d46ea3385ad880bb7ecacedf8651ccc95d5cd6 249 247 2008-07-16T06:34:51Z OlegA 1 wikitext text/x-wiki == Редактирование == * [[mediawikiwiki:Help:Editing pages/ru|Редактирование страниц]] * [[mediawikiwiki:Help:Starting a new page/ru|Создание новой страницы]] * [[mediawikiwiki:Help:Formatting/ru|Форматирование]] * [[mediawikiwiki:Help:Links/ru|Ссылки]] * [[Справка:Шаблоны|Шаблоны]] * [[Справка:Категории|Категории]] * [[Справка:Оформление кода|Оформление кода]] === Расширенное редактирование === * [[mediawikiwiki:Help:Images/ru|Изображения]] * [[mediawikiwiki:Help:Tables/ru|Таблицы]] * [[mediawikiwiki:Help:Managing files/ru|Управление файлами]] * [[mediawikiwiki:Help:Moving a page/ru|Перемещение (переименование) страниц]] * [[mediawikiwiki:Help:Redirects/ru|Перенаправления]] * [[mediawikiwiki:Help:Deleting a page/ru|Удаление страниц]] * [[mediawikiwiki:Help:Variables/ru|Переменные]] * [[mediawikiwiki:Help:Namespaces/ru|Пространства имён]] * [[mediawikiwiki:Help:Interwiki linking/ru|Интервики-ссылки]] [[Category:Справка|Справка по редактированию]] 01fc90706e4f77271c778bcba229df8ddf343cc5 261 249 2008-07-16T10:46:19Z OlegA 1 wikitext text/x-wiki == Редактирование == * [[mediawikiwiki:Help:Editing pages/ru|Редактирование страниц]] * [[mediawikiwiki:Help:Starting a new page/ru|Создание новой страницы]] * [[mediawikiwiki:Help:Formatting/ru|Форматирование]] * [[mediawikiwiki:Help:Links/ru|Ссылки]] * [[Справка:Шаблоны|Шаблоны]] * [[Справка:Категории|Категории]] * [[Справка:Оформление кода|Оформление кода]] * [[Справка:E-mail|E-mail]] === Расширенное редактирование === * [[mediawikiwiki:Help:Images/ru|Изображения]] * [[mediawikiwiki:Help:Tables/ru|Таблицы]] * [[mediawikiwiki:Help:Managing files/ru|Управление файлами]] * [[mediawikiwiki:Help:Moving a page/ru|Перемещение (переименование) страниц]] * [[mediawikiwiki:Help:Redirects/ru|Перенаправления]] * [[mediawikiwiki:Help:Deleting a page/ru|Удаление страниц]] * [[mediawikiwiki:Help:Variables/ru|Переменные]] * [[mediawikiwiki:Help:Namespaces/ru|Пространства имён]] * [[mediawikiwiki:Help:Interwiki linking/ru|Интервики-ссылки]] [[Category:Справка|Справка по редактированию]] 3375cfaf6dffb51bf487e50473238cef6c5e2382 Справка:Шаблоны 12 117 250 2008-07-16T08:38:13Z OlegA 1 Новая: Вы можете использовать готовые шаблоны или создать собственные. Готовые шаблоны: == <nowiki>{{Суперпольз... wikitext text/x-wiki Вы можете использовать готовые шаблоны или создать собственные. Готовые шаблоны: == <nowiki>{{Суперпользователь}}</nowiki> == {{Суперпользователь}} == <nowiki>{{Superuser}}</nowiki> == {{Superuser}} 927ff670ad83195ba5e7df00be9469f88826e59a 251 250 2008-07-16T08:38:39Z OlegA 1 wikitext text/x-wiki Вы можете использовать готовые шаблоны или создать собственные. Готовые шаблоны: == <nowiki>{{Суперпользователь}}</nowiki> == {{Суперпользователь}} == <nowiki>{{Superuser}}</nowiki> == {{Superuser}} [[Category:Справка]] b657dfcaa17d712318abf5020eabe0f4407d4c72 Справка:Категории 12 118 252 2008-07-16T08:41:06Z OlegA 1 Новая: Каждая страница должна относится к категоии. Это сделанно для организации иерархии и лучшего поиска. ... wikitext text/x-wiki Каждая страница должна относится к категоии. Это сделанно для организации иерархии и лучшего поиска. Страница может принадлежать к нескольким категориям. [[Служебная:Categories|Полный список всех категорий.]] [[Category:Справка]] ee4926b21ee195f3b05b0c8f320fa96aa7b58e01 Справка:Оформление кода 12 119 253 2008-07-16T08:56:37Z OlegA 1 Новая: Для лучшего чтения текста лучше выделять код в определенное поле, которое можно скопировать с точнос... wikitext text/x-wiki Для лучшего чтения текста лучше выделять код в определенное поле, которое можно скопировать с точностью до символа. В вики предусмотренно несколько способов: 1. Включение кода в текст, используется тег <nowiki><code></code></nowiki>. Пример: Здесь <code>код</code> 2. Включение много сторчного кода, используется тэг <nowiki><pre></pre></nowiki>. Пример: Здесь: <pre> код </pre> 3. Включение кода с подсветкой, в зависимости от формата, языка текста, используется тэг <nowiki><source lang=""></source></nowiki>. В ковычках необходимо указать тип. Список типов: 4gl, a4c, abp, ada, agda, ampl, amtrix, applescript, arc, arm, as, asm, asp, aspect, au3, avenue, awk, bat, bb, bib, bms, boo, c, cb, cfc, clipper, clp, cob, cs, css, d, diff, dot, dylan, e, erl, euphoria, exp, f77, f90, flx, frink, haskell, hcl, httpd, icn, idl, ini, inp, io, j, java, js, jsp, lbn, ldif, lgt, lisp, lotos, ls, lsl, lua, ly, m, make, mel, mib, miranda, ml, mo, mod3, mpl, ms, mssql, n, nas, nice, nsi, nut, oberon, objc, octave, oorexx, os, pas, php, pike, pl, pl1, pov, pro, progress, ps, ps1, psl, py, pyx, q, qu, r, rb, rexx, rnc, s, sas, sc, scala, scilab, sh, sma, smalltalk, sml, snobol, spec, spn, sql, sybase, tcl, tcsh, test_re, tex, ttcn3, txt, vb, verilog, vhd, xml, xpp, y Пример PHP: <source lang="php"> <?php class C1 extends C2 implements I1,I2{ private $a; protected $b; function __construct($a,$b){ parent::__construct($a,$b); $this->a = $a; $this->b = $b; } public function plus(){ return $a+$b; } /* ............... */ } $d = new C1(1,2); echo $d->plus(); ?> </source> Пример C++: <source lang="cpp"> #include <iostream> // для использования std::cout #include <vector> // для std::vector<> #include <map> // для std::map<> и std::pair<> #include <algorithm> // для std::for_each() #include <string> // для std::string using namespace std; // используем пространство имён "std" void display_item_count(pair< string const, vector<string> > const& person) { // person - это пара двух объектов: person.first - это его имя, // person.second - это список его предметов (вектор строк) cout << person.first << " is carrying " << person.second.size() << " items" << endl; } int main() { // объявляем карту со строковыми ключами и данными в виде векторов строк map< string, vector<string> > items; // Добавим в эту карту пару человек и дадим им несколько предметов items["Anya"].push_back("scarf"); items["Dimitri"].push_back("tickets"); items["Anya"].push_back("puppy"); // Переберём все объекты в контейнере for_each(items.begin(), items.end(), display_item_count); } </source> Пример Perl: <source lang="perl"> #!/usr/bin/perl print "Content-type: text/html\n\n"; print "Hello, world!"; </source> Пример Python: <source lang="py"> from timeit import Timer def case1(): # А. инкрементальные конкатенации в цикле s = "" for i in range(10000): s += str(i) def case2(): # Б. через промежуточный список и метод join s = [] for i in range(10000): s.append(str(i)) s = "".join(s) def case3(): # В. списковое выражение и метод join return "".join([str(i) for i in range(10000)]) def case4(): # Г. генераторное выражение и метод join return "".join(str(i) for i in range(10000)) for v in range(1,5): print (Timer("func()","from __main__ import case%s as func" % v).timeit(200)) </source> [[Category:Справка]] 92fb65b116dcac9fed1436947af17c8e3d329fd1 Категория:Статьи 14 120 255 2008-07-16T09:01:04Z OlegA 1 Новая: <nowiki></nowiki> wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 Участник:OlegA 2 121 260 2008-07-16T09:08:05Z OlegA 1 Новая: --~~~~ wikitext text/x-wiki --[[Участник:OlegA|Oleg]] 09:08, 16 июля 2008 (UTC) 414844879e2a488f95f6e6106e0b616fc9a9fbb0 Справка:E-mail 12 122 262 2008-07-16T10:47:38Z OlegA 1 Новая: Для зашиты от спама необходимо испльзовать тэг <nowiki><email></email></nowiki>. Пример: <email>postmaster@example.com</email> wikitext text/x-wiki Для зашиты от спама необходимо испльзовать тэг <nowiki><email></email></nowiki>. Пример: <email>postmaster@example.com</email> 1949d1157164f871f98ba17ba35be500281cc7d4 Заглавная страница 0 17 263 259 2008-07-16T12:14:00Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статьи|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[:Category:Установка и настройка|Установка и настройка]] * [[:Category:Программное обеспечение|Программное обеспечение]] * [[FAQ]] * [[:Category:Статьи|Статьи]] * [[:Category:Репозитории|Репозитории]] [[ro:Pagina_principală]] e03e7aef33abe64e9600bba3538e6fdac60dc53f Категория:Репозитории 14 123 264 2008-07-16T12:14:13Z OlegA 1 Новая: <nowiki></nowiki> wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 271 264 2008-07-16T12:37:56Z OlegA 1 wikitext text/x-wiki [[ro:Category:Repozitorii]] 1931c5496fcfde28cdd4d627b46b59f8eeda03fd Репозиторий:Fedora 9 0 124 265 2008-07-16T12:17:00Z OlegA 1 Новая: {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 9 (Everything)'',... wikitext text/x-wiki {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 9 (Everything)'', ''Fedora 9 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 9 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 9 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с дополнительными репозиториями установите пакет ''fedoramd-release-9'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-9.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 9]] 10b4f95022837dd6d278b4b76b93fa57f3392ecb 282 265 2008-07-16T13:17:55Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 9 (Everything)'', ''Fedora 9 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 9 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 9 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с дополнительными репозиториями установите пакет ''fedoramd-release-9'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-9.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 9]] [[ro:Repozitori:Fedora 9]] 91217db370d676903512f9a08f352975847aa1dc Репозиторий:Fedora 8 0 125 266 2008-07-16T12:19:46Z OlegA 1 Новая: {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 8 (Everything)'',... wikitext text/x-wiki {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 8 (Everything)'', ''Fedora 8 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 8 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 8 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 8 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 8 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с дополнительными репозиториями установите пакет ''fedoramd-release-8'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-8.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории]] 1f61afb78e21569ba7102712a313df6f252cd4c7 267 266 2008-07-16T12:20:01Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 8 (Everything)'', ''Fedora 8 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 8 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 8 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 8 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 8 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с дополнительными репозиториями установите пакет ''fedoramd-release-8'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-8.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 8]] 7c2a6d8b473b285964608691121edcc7b21da8be 281 267 2008-07-16T13:17:21Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 8 (Everything)'', ''Fedora 8 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 8 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 8 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 8 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 8 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с дополнительными репозиториями установите пакет ''fedoramd-release-8'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-8.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 8]] [[ro:Repozitori:Fedora 8]] 33eb6d1fafe40c8fab31d55c645f20b844d7a5f8 Репозиторий:Fedora 10 0 126 268 2008-07-16T12:22:44Z OlegA 1 Новая: {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 7 (Everything)'',... wikitext text/x-wiki {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 7 (Everything)'', ''Fedora 7 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 7 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 7 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 7 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 7 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с нашим сайтом установите пакет ''fedoramd-release-7'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-7.rpm </source> Так как наше зеркало дублирует ряд стандартных, для улучшения скорости работы YUM их можно отключить: <source lang="bash"> # sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/{fedora,fedora-updates,livna}.repo </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек при условии использования yum плагина ''yum-fastestmirror''.}} [[Category:Репозитории|Fedora 7]] a06765f499c7db382f675575c9bfa366fa1c1253 280 268 2008-07-16T13:16:56Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 7 (Everything)'', ''Fedora 7 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 7 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 7 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 7 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 7 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с нашим сайтом установите пакет ''fedoramd-release-7'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-7.rpm </source> Так как наше зеркало дублирует ряд стандартных, для улучшения скорости работы YUM их можно отключить: <source lang="bash"> # sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/{fedora,fedora-updates,livna}.repo </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек при условии использования yum плагина ''yum-fastestmirror''.}} [[Category:Репозитории|Fedora 7]] [[ro:Repozitori:Fedora 7]] aa0e2efb8cd5d3a859fb9da4a5be93b979518520 Репозиторий:CentOS 0 127 269 2008-07-16T12:28:23Z OlegA 1 Новая: {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''CentOS'' 4.x, 5.x (вк... wikitext text/x-wiki {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''CentOS'' 4.x, 5.x (включая ''os, extras, centosplus, csgfs, fasttrack, updates'') для i386 и x86_64 архитектур * ''EPEL'' для CentOS 4.x, 5.x (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с EPEL установите пакет ''epel-release''. Для CentOS/RHEL 5.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/5/i386/epel-release-5-3.noarch.rpm </source> Для CentOS/RHEL 4.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/4/i386/epel-release-4-6.noarch.rpm </source> {{Information|Базовые репозитории CentOS нашего зеркала вам доступны без дополнительных настроек при условии использования yum плагина ''yum-fastestmirror''.}} {{Information|Также вы можете явно указать параметр ''failovermethod<nowiki>=</nowiki>priority'' для всех репозиториев CentOS (из каталога ''/etc/yum.repos.d/'') чтобы повысить приоритет нашего сервера.}} [[Category:Репозитории|CentOS]] 51bcaba27ecea6d5dfa28ef96eee1f9bea750838 278 269 2008-07-16T13:16:06Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} FedoraMD.org предоставляет доступ к зеркалам следующих репозиториев: * ''CentOS'' 4.x, 5.x (включая ''os, extras, centosplus, csgfs, fasttrack, updates'') для i386 и x86_64 архитектур * ''EPEL'' для CentOS 4.x, 5.x (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с EPEL установите пакет ''epel-release''. Для CentOS/RHEL 5.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/5/i386/epel-release-5-3.noarch.rpm </source> Для CentOS/RHEL 4.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/4/i386/epel-release-4-6.noarch.rpm </source> {{Information|Базовые репозитории CentOS нашего зеркала вам доступны без дополнительных настроек при условии использования yum плагина ''yum-fastestmirror''.}} {{Information|Также вы можете явно указать параметр ''failovermethod<nowiki>=</nowiki>priority'' для всех репозиториев CentOS (из каталога ''/etc/yum.repos.d/'') чтобы повысить приоритет нашего сервера.}} [[Category:Репозитории|CentOS]] [[ro:Repozitori:CentOS]] 796a4632fb5823e41e8bab1add026b2010a72760 Репозиторий:Cygwin 0 128 270 2008-07-16T12:30:59Z OlegA 1 Новая: FedoraMD.org предоставляет доступ к зеркалу [http://cygwin.com/ Cygwin] репозитория: Чтобы воспользоваться нашим репо,... wikitext text/x-wiki FedoraMD.org предоставляет доступ к зеркалу [http://cygwin.com/ Cygwin] репозитория: Чтобы воспользоваться нашим репо, скачайте [http://www.fedoramd.org/misc/cygwin/setup.exe setup.exe], запустите, и в списке зеркал добавьте URL: http://repo.fedoramd.org/mirrors/cygwin/ . {{Information|'''Внимание:''' команды предваряемые символом '#' должны выполняться с правами root. Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду: <source lang="bash"> $ su - </source> }} для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя. [[Category:Репозитории|Cygwin]] 0c50d60046ef27acf818a159d3a154b26e89e03e 279 270 2008-07-16T13:16:30Z OlegA 1 wikitext text/x-wiki FedoraMD.org предоставляет доступ к зеркалу [http://cygwin.com/ Cygwin] репозитория: Чтобы воспользоваться нашим репо, скачайте [http://www.fedoramd.org/misc/cygwin/setup.exe setup.exe], запустите, и в списке зеркал добавьте URL: http://repo.fedoramd.org/mirrors/cygwin/ . {{Information|'''Внимание:''' команды предваряемые символом '#' должны выполняться с правами root. Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду: <source lang="bash"> $ su - </source> }} для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя. [[Category:Репозитории|Cygwin]] [[ro:Repozitori:Cygwin]] c62b27ba350f79044d516828067b7834879d2a6a Категория:Repozitorii 14 129 272 2008-07-16T12:38:32Z OlegA 1 Новая: [[ru:Category:Репозитории]] wikitext text/x-wiki [[ru:Category:Репозитории]] bec91a69d12f74c2e46dbc7e458d1f12bf2ada7f Repozitori:Fedora 9 0 130 273 2008-07-16T12:41:21Z OlegA 1 Новая: {{Superuser}} FedoraMD.org prestează access la oglinzile următorelor repozitorii: * ''Fedora 9 (Everything)'', ''Fedora 9 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' p... wikitext text/x-wiki {{Superuser}} FedoraMD.org prestează access la oglinzile următorelor repozitorii: * ''Fedora 9 (Everything)'', ''Fedora 9 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 9 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 9 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 9 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 9 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-9'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-9.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [[Category:Repozitorii|Fedora 9]] [[ru:Репозиторий:Fedora 9]] f1e8d159d6f7fd469929042cdaf87ccad669a5e7 Repozitori:Fedora 8 0 131 274 2008-07-16T12:48:09Z OlegA 1 Новая: {{Superuser}} FedoraMD.org prestează access la oglinzile următorelor repozitorii: * ''Fedora 8 (Everything)'', ''Fedora 8 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' p... wikitext text/x-wiki {{Superuser}} FedoraMD.org prestează access la oglinzile următorelor repozitorii: * ''Fedora 8 (Everything)'', ''Fedora 8 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 8 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-8'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-8.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [[Category:Repozitorii|Fedora 8]] [[ru:Репозиторий:Fedora 8]] d95fb2bf814c985a73f59180031de72f5601c68a Repozitori:Fedora 10 0 132 275 2008-07-16T12:53:06Z OlegA 1 Новая: {{Superuser}} FedoraMD.org prestează access la oglinzile următorelor repozitorii: * ''Fedora 7 (Everything)'', ''Fedora 7 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' p... wikitext text/x-wiki {{Superuser}} FedoraMD.org prestează access la oglinzile următorelor repozitorii: * ''Fedora 7 (Everything)'', ''Fedora 7 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 7 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 7 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 7 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 7 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-7'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-7.rpm </source> Deoarece oglinda noastră dublează repozitorii standard, pentru lucru mai efectiv a YUM acestea pot fi dezactivate: <source lang="bash"> # sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/{fedora,fedora-updates,livna}.repo </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat cu condiţia utilizării yum plugin ''yum-fastestmirror''.}} [[Category:Repozitorii|Fedora 7]] [[ru:Репозиторий:Fedora 7]] 1704f4e0e576838df9cddf4fdf7e6fe611b7f871 Repozitori:CentOS 0 133 276 2008-07-16T13:13:30Z OlegA 1 Новая: {{Superuser}} FedoraMD.org restează access la oglinzile următorelor repozitorii: * ''CentOS'' 4.x, 5.x (inclusiv ''os, extras, centosplus, csgfs, fasttrack, updates'') pentru architec... wikitext text/x-wiki {{Superuser}} FedoraMD.org restează access la oglinzile următorelor repozitorii: * ''CentOS'' 4.x, 5.x (inclusiv ''os, extras, centosplus, csgfs, fasttrack, updates'') pentru architecturile i386 şi x86_64 * ''EPEL'' pentru CentOS/RHEL 4.x, 5.x (architecturile i386 şi x86_64) Pentru a seta YUM la ''EPEL'', instalaţi pachetul ''epel-release''. Pentru CentOS/RHEL 5.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/5/i386/epel-release-5-3.noarch.rpm </source> Pentru CentOS/RHEL 4.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/4/i386/epel-release-4-6.noarch.rpm </source> {{Information|Repozitoriile CentOS standard plasate pe oglinda noastră vă sînt accesibile în mod automat cu condiţia utilizării yum plugin ''yum-fastestmirror''.}} {{Information|De asemenea puteţi seta explicit parametru ''failovermethod<nowiki>=</nowiki>priority'' pentru toate repozitoriile CentOS (din directorul ''/etc/yum.repos.d/'') pentru a prioritiza accesul la serverul nostru.}} [[Category:Repozitorii|CentOS]] [[ru:Репозиторий:CentOS]] ff64ee8f5441396587c664aeffec97d03ff05eb6 297 276 2008-07-23T10:44:42Z VasileVsx 2 wikitext text/x-wiki {{Superuser}} FedoraMD.org prestează access la oglinzile următorelor repozitorii: * ''CentOS'' 4.x, 5.x (inclusiv ''os, extras, centosplus, csgfs, fasttrack, updates'') pentru architecturile i386 şi x86_64 * ''EPEL'' pentru CentOS/RHEL 4.x, 5.x (architecturile i386 şi x86_64) Pentru a seta YUM la ''EPEL'', instalaţi pachetul ''epel-release''. Pentru CentOS/RHEL 5.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/5/i386/epel-release-5-3.noarch.rpm </source> Pentru CentOS/RHEL 4.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/4/i386/epel-release-4-6.noarch.rpm </source> {{Information|Repozitoriile CentOS standard plasate pe oglinda noastră vă sînt accesibile în mod automat cu condiţia utilizării yum plugin ''yum-fastestmirror''.}} {{Information|De asemenea puteţi seta explicit parametru ''failovermethod<nowiki>=</nowiki>priority'' pentru toate repozitoriile CentOS (din directorul ''/etc/yum.repos.d/'') pentru a prioritiza accesul la serverul nostru.}} [[Category:Repozitorii|CentOS]] [[ru:Репозиторий:CentOS]] 6c5a80290ed08b895698571a055b2a34b9708392 Repozitori:Cygwin 0 134 277 2008-07-16T13:15:31Z OlegA 1 Новая: {{Superuser}} FedoraMD.org prestează access la oglinda repozitoriului [http://cygwin.com/ Cygwin]: Pentru a accesa acest repo, descărcaţi [http://www.fedoramd.org/misc/cygwin/setup... wikitext text/x-wiki {{Superuser}} FedoraMD.org prestează access la oglinda repozitoriului [http://cygwin.com/ Cygwin]: Pentru a accesa acest repo, descărcaţi [http://www.fedoramd.org/misc/cygwin/setup.exe setup.exe], rulaţi, şi în lista oglinzilor adăugaţi URL: http://repo.fedoramd.org/mirrors/cygwin/ . {{Information|'''Atenţie''': comenzile precedate de caracterul '#' trebuie executate cu drepturile utilizatorului root. Deschideţi emulator terminal (sau aflîndu-se în consolă) cu drepturi utilizatorului regular, introduceţi comanda <source lang="bash"> $ su - </source> }} spre a ridica nivelul de privilegii. Caracterele '$' şi '#' din începutul rîndului nu fac parte din comanda şi nu trebuie introduse. Alte comenzi pot fi executate cu drepturlie utilizatorului regular. [[Category:Repozitorii|Cygwin]] [[ru:репозиторий:Cygwin]] c288ef1034a96f7f8f16accbb83f27fe8298b8fd Категория:Установка и настройка 14 33 283 83 2008-07-16T13:25:30Z OlegA 1 wikitext text/x-wiki [[ro:Category:Instalare şi configurare]] dd94313292e6c23011d4553f1c773ba3ffe85157 Категория:Instalare şi configurare 14 49 284 119 2008-07-16T13:25:54Z OlegA 1 wikitext text/x-wiki [[ru:Категория:Установка и настройка]] f424ccd8e9541c7e1fbe6561237ef3e5393ff887 Instalare drivere UVC şi GSPCA pentru suport WebCam 0 51 285 139 2008-07-16T13:28:20Z OlegA 1 wikitext text/x-wiki {{Superuser}} Pentru a utiliza o cameră Web (în continuare WebCam) în Linux, trebuie, în dependenţă de model, de instalat: == gspca == '''gspca''' - un driver pentru o [http://mxhaard.free.fr/spca5xx.html mulţime de modele]. El este disponibil din repozitoriul '''Livna'''. Deconectaţi WebCam. Apoi executaţi: <source lang="bash"> # yum install gspca </source> acum conectaţi WebCam, şi încercaţi să rulati o aplicatie cu suport la V4L (V4L2). == uvc-linux == '''uvc-linux''' - alt driver pentru [http://linux-uvc.berlios.de/#devices dispozitive compatibile] USB Video Class. {{Information|Utilizatorilor Fedora 8 este destul doar de a înnoi kernel pînă la versiunea 2.6.24.2-7 sau mai nouă. Kernel'ul nou deja conţine toate modulele necesare.}} Pentru a compila driver'ul din surse vom avea nevoie de pachete: ''kernel-devel, gcc, glibc-devel, subversion'' <source lang="bash"> # yum install kernel-devel gcc glibc-devel subversion </source> Descarcam sursele driverului într'un director temporar: <source lang="bash"> # mkdir linux-uvc;cd linux-uvc; svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk </source> şi-l compilăm <source lang="bash"> # make -C trunk all install </source> Încărcăm modul kernel (driver) în memorie: <source lang="bash"> # modprobe uvcvideo </source> Dacă la ultima etapă au apărut mesaje de eroare, pentru o descriere mai detailată urmărim ieşirea comenzii <source lang="bash"> $ dmesg|tail </source> Testăm suport video în aplicaţie preferată (ex. Skype, Kopete, ..) Operaţiile de mai sus vor trebui repetate la fiecare înnoire versiune kernel. Pentru comoditate au fost organizate într'un script shell. Plasaţi următorul conţinut într'un fişier text: <source lang="bash"> #!/bin/bash # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 2>&1 exit 1 fi #check packages if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then echo "installing missing packages"; yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!" fi #create temp dir TEMP_DIR=/tmp/uvc-linux-$$ mkdir $TEMP_DIR && cd $TEMP_DIR && #get latest SVN source svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk && #install make -C trunk all install && echo "installed successfully" && #insert module modprobe uvcvideo #remove temp dir cd ../ rm -fr $TEMP_DIR </source> Îl rulăm cu drepturile utilizatorului '''root''': <source lang="bash"> # sh webcam_compile.sh </source> ---- Sursele: * [http://liquidat.wordpress.com/2007/12/07/howto-logitech-quickcam-pro-9000-with-fedora-8/ liquidat.wordpress.com] [[Category:Instalare şi configurare]] [[Category:Driver'e]] [[ru:Установка UVC и GSPCA драйверов Web-камер]] cd2f15c1573b77aed19175ccdc9cba4cb8865e1b Категория:Driver'e 14 135 286 2008-07-16T13:29:00Z OlegA 1 Новая: [[Category:Instalare şi configurare]] [[ru:Category:Драйвера]] wikitext text/x-wiki [[Category:Instalare şi configurare]] [[ru:Category:Драйвера]] 8e637f4c4b3294be4ad627b4890eeb2b4ede707e Категория:Драйвера 14 56 287 138 2008-07-16T13:29:26Z OlegA 1 wikitext text/x-wiki [[Category:Установка и настройка]] [[ro:Category:Driver'e]] 0a141e532134af81ebbd56f3895e43a112358c08 Категория:Программное обеспечение 14 99 288 204 2008-07-16T13:30:22Z OlegA 1 wikitext text/x-wiki [[ro:Category:Programe]] 6901a26fe1851b33d2e9c7c569eddfa8d27ce37b 289 288 2008-07-16T13:30:57Z OlegA 1 wikitext text/x-wiki <nowiki></nowiki> 30deb83d48751285cdc378b64bce98a63313a8a2 Справка:E-mail 12 122 290 262 2008-07-16T14:17:44Z OlegA 1 wikitext text/x-wiki Для зашиты от спама необходимо испльзовать тэг <nowiki><email></email></nowiki>. Пример: <email>postmaster@example.com</email> [Category:Справка]] f13ceb9cdb7c36b67ba2b889cd37290124bd2a9f 291 290 2008-07-16T14:17:51Z OlegA 1 wikitext text/x-wiki Для зашиты от спама необходимо испльзовать тэг <nowiki><email></email></nowiki>. Пример: <email>postmaster@example.com</email> [[Category:Справка]] 87db7f35faffe24b6261ea49f990043029edf314 Pagina principală 0 3 292 234 2008-07-17T14:31:38Z OlegA 1 wikitext text/x-wiki == FedoraMD.org Wiki == '''Bine aţi venit în lume Fedora Linux.''' Aici puteţi găsi întrebări fracvente şi soluţii, exemple de setări şi sfaturi aplicabile nu doar la [[Fedora Linux/ro|Fedora Linux]], dar şi la alte distribuţii Linux. De asemenea avem [[:Category:Articole|articole]], care vă vor ajuta să descoperiţi diversa lume a sistemelor Linux. Site-ul este bazat pe tehnologia [[wikipedia:ro:Wiki|Wiki]]. După înregistrare veţi putea schimba parametrii utilizator, a edita şi crea pagini. Funcţie utilă - [[Special:Search|căutare]]. Căutare se execută peste tot conţinutul site-ului. == Secţii == * [[:Category:Instalare şi configurare|Instalare şi configurare]] * [[Programe]] * [[FAQ/ro|FAQ]] * [[:Category:Articole|Articole]] * [[:Category:Repozitorii|Repozitorii]] [[ru:Заглавная_страница]] f43c6e39dc25aa46b609744b95a6b40d39e309d9 Gentoo: использование молдавского зеркала 0 95 295 196 2008-07-23T10:33:20Z 87.248.181.9 0 /* Репозиторий */ wikitext text/x-wiki == Репозиторий == Для того, чтобы обновления ''Gentoo'' качались с одного из местных (Молдавских) серверов, достаточно лишь изменить следующую строку в файле '''/etc/make.conf''': <source lang="cfc"> GENTOO_MIRRORS="ftp://ftp.bsd.md/pub/Gentoo/gentoo http://distfiles.gentoo.md/ ftp://ftp.lug.ro/gentoo http://distfiles.gentoo.org" </source> Больший приоритет имеют зеркала, находящиеся в начале строки. В данном примере, сначала будет попытка скачать файл с одного из MD-IX зеркал, в случае неудачи, пройдёт попытка подключения к [ftp://ftp.lug.ro/gentoo lug.ro], а затем - к [http://distfiles.gentoo.org gentoo.org]. == Дерево Portage == Так-же есть возможность синхронизировать и дерево ''portage'' с локального (Молдавского) зеркала, предоставляемого командой [http://www.bsd.md BSD.md]. Для этого, нужно добавить следующую строку в тот-же '''/etc/make.conf''': <source lang="cfc"> SYNC="rsync://rsync.bsd.md/gentoo-portage" </source> Другие зеркала portage: <source lang="cfc"> SYNC="rsync://89.33.254.209/gentoo-portage" </source> = Разное = Чтобы ещё ускорить процесс скачивания и установки обновлений, можно настроить portage, чтобы пока происходит сборка одного пакета, уже качался следующий. Это достигается добавлением опции parallel-fetch в строку FEATURES файла '''/etc/make.conf''': <source lang="cfc"> FEATURES="parallel-fetch" </source> [[Category:Установка и настройка]] [[Category:Другие дистрибутивы]] b5688a843dfe665acde44ff6bdc89484b29d9c1c 296 295 2008-07-23T10:34:02Z 87.248.181.9 0 /* Дерево Portage */ wikitext text/x-wiki == Репозиторий == Для того, чтобы обновления ''Gentoo'' качались с одного из местных (Молдавских) серверов, достаточно лишь изменить следующую строку в файле '''/etc/make.conf''': <source lang="cfc"> GENTOO_MIRRORS="ftp://ftp.bsd.md/pub/Gentoo/gentoo http://distfiles.gentoo.md/ ftp://ftp.lug.ro/gentoo http://distfiles.gentoo.org" </source> Больший приоритет имеют зеркала, находящиеся в начале строки. В данном примере, сначала будет попытка скачать файл с одного из MD-IX зеркал, в случае неудачи, пройдёт попытка подключения к [ftp://ftp.lug.ro/gentoo lug.ro], а затем - к [http://distfiles.gentoo.org gentoo.org]. == Дерево Portage == Так-же есть возможность синхронизировать и дерево ''portage'' с локального (Молдавского) зеркала, предоставляемого командой [http://www.bsd.md BSD.md]. Для этого, нужно добавить следующую строку в тот-же '''/etc/make.conf''': <source lang="cfc"> SYNC="rsync://rsync.bsd.md/gentoo-portage" </source> Другие зеркала portage: <source lang="cfc"> SYNC="rsync://gentoo.md/gentoo-portage" </source> = Разное = Чтобы ещё ускорить процесс скачивания и установки обновлений, можно настроить portage, чтобы пока происходит сборка одного пакета, уже качался следующий. Это достигается добавлением опции parallel-fetch в строку FEATURES файла '''/etc/make.conf''': <source lang="cfc"> FEATURES="parallel-fetch" </source> [[Category:Установка и настройка]] [[Category:Другие дистрибутивы]] 9ec757880418342b63feeee75da7e98b32aa25e8 Test 0 20 300 163 2008-07-25T18:16:29Z OlegA 1 wikitext text/x-wiki <accesscontrol>Admins</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> c6dcad1f661f9e9a0119ee8e5cdabc4de207cf61 301 300 2008-07-25T18:23:13Z OlegA 1 wikitext text/x-wiki <accesscontrol>Admins,,anon(ro)</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> 7458fa2274d920a001f336d82fa1b072d4842ff3 302 301 2008-07-25T18:24:38Z OlegA 1 wikitext text/x-wiki <accesscontrol>Admins,,(ro)</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> 8246bd98b643c95c581f1e688059c2e59a487feb 304 302 2008-07-25T18:33:33Z OlegA 1 wikitext text/x-wiki <accesscontrol>Admins,,All(ro)</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> 509ba432fc821a09bab878cb3e134d2893a6c700 305 304 2008-07-25T18:34:00Z OlegA 1 wikitext text/x-wiki <accesscontrol>Admins,,anon</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> cedf16d095fed24634c2b47851897a68eb444400 306 305 2008-07-25T18:35:04Z OlegA 1 wikitext text/x-wiki <accesscontrol>Admins,,*</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> 588828d4af99e6d9bf8abe015ce26788806571fe 307 306 2008-07-25T18:35:35Z OlegA 1 wikitext text/x-wiki <accesscontrol>Admins,,</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> 02feb3488cdd9edfd2708da1bffb4af51ae96964 308 307 2008-07-25T18:35:52Z OlegA 1 wikitext text/x-wiki <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> e9bce6d8f92d9f433dc95920d25aad2a49057c20 309 308 2008-07-25T18:37:02Z OlegA 1 wikitext text/x-wiki <accesscontrol>sysop</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> 845be07d6dc466e6c96e451489160ff76862a685 310 309 2008-07-25T18:37:29Z OlegA 1 wikitext text/x-wiki <accesscontrol>sysop,,*(ro)</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> b54cac6c00bd68fef7ee306c38207fb96273b45d 311 310 2008-07-25T18:38:12Z OlegA 1 wikitext text/x-wiki <accesscontrol>sysop,,anon(ro)</accesscontrol> <norobots></norobots> == Заголовок 2 == == Заголовок 2 == === Заголовок 3 === ==== Заголовок 4 ==== '''Полужирное начертание''' ===== Заголовок 5 ===== '''Полужирное начертание''' {| !style="text-align:center;"|шапка1 !style="text-align:center;"|шапка2 |- |значение1 |значение2 |- |<email>spam@spam.com</email> |<email>spam@yandex.ru</email> |- |} <source lang="cpp"> cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout << cout; </source> <categorytree mode=all depth=5 >Установка и настройка</categorytree> e71bd0b18fba0f5118d87bd58d6faf22c8d359b6 No Access 0 139 317 2008-07-25T19:23:16Z OlegA 1 Новая: '''You do not have access to viewing/editing this page.''' '''Вы не имеете дуступ к просмотру/редактированию данной страницы.''' wikitext text/x-wiki '''You do not have access to viewing/editing this page.''' '''Вы не имеете дуступ к просмотру/редактированию данной страницы.''' e44c532447def0cda74fed3f6432323001cb8529 318 317 2008-07-25T19:23:53Z OlegA 1 wikitext text/x-wiki '''You do not have access to viewing/editing this page.''' '''Вы не имеете дуступ к просмотру/редактированию данной страницы.''' '''Nu aveţi acces la vizualizare/editare pe această pagină.''' 3b787667837cb24c2b891608e4b73ea02a635b45 Участник:OlegA 2 121 321 260 2008-07-27T07:03:21Z OlegA 1 wikitext text/x-wiki == Любимые видео-потоки == * mms://vipnrj.yacast.net/nrj_tvhit * mms://vipnrj.yacast.net/nrj_webtv02 * mms://vipmms9.yacast.net/mcm_top bb55fb7d836bc87e96d226625e21a3b389068ba0 323 321 2008-07-29T13:38:13Z OlegA 1 wikitext text/x-wiki == Любимые видео-потоки == * mms://vipnrj.yacast.net/nrj_tvhit * mms://vipnrj.yacast.net/nrj_webtv02 * mms://vipmms9.yacast.net/mcm_top == Цытаты == * Стринги - это струна, натянутая на 2 чудесных барабана. c4a6a69d3c69bdb3d321406e278985009ce14257 324 323 2008-07-29T13:38:26Z OlegA 1 wikitext text/x-wiki == Любимые видео-потоки == * mms://vipnrj.yacast.net/nrj_tvhit * mms://vipnrj.yacast.net/nrj_webtv02 * mms://vipmms9.yacast.net/mcm_top == Цитаты == * Стринги - это струна, натянутая на 2 чудесных барабана. 8f6d7b5c98d683359e5301c2ac91cd57c6d044c1 Файл:Brain.gif 6 141 326 2008-07-29T13:41:46Z OlegA 1 wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 Участник:OlegA 2 121 327 324 2008-07-29T13:42:24Z OlegA 1 wikitext text/x-wiki == Любимые видео-потоки == * mms://vipnrj.yacast.net/nrj_tvhit * mms://vipnrj.yacast.net/nrj_webtv02 * mms://vipmms9.yacast.net/mcm_top == Цитаты == * Стринги - это струна, натянутая на 2 чудесных барабана. [[Изображение:brain.gif]] d2cffd4d4add1cf3d3b76177f448c20f6faa47c7 330 327 2008-08-09T20:06:56Z OlegA 1 wikitext text/x-wiki == Любимые видео-потоки == * mms://vipnrj.yacast.net/nrj_tvhit * mms://vipnrj.yacast.net/nrj_webtv02 * mms://vipmms9.yacast.net/mcm_top == Цитаты == * Стринги - это струна, натянутая на 2 чудесных барабана. [[Изображение:brain.gif]] == Create 3gp == <source lang="bash"> ffmpeg -i [input_file] -vcodec mpeg4 -s cif -ab 32 -ac 1 -acodec libfaac [output_file].3gp </source> 83ed2ebe9100db950ed96b4fcbc8fea2e6063c2d 331 330 2008-08-10T06:26:19Z OlegA 1 wikitext text/x-wiki == Любимые видео-потоки == * mms://vipnrj.yacast.net/nrj_tvhit * mms://vipnrj.yacast.net/nrj_webtv02 * mms://vipmms9.yacast.net/mcm_top * mms://video.rfn.ru/vesti_24 == Цитаты == * Стринги - это струна, натянутая на 2 чудесных барабана. [[Изображение:brain.gif]] == Create 3gp == <source lang="bash"> ffmpeg -i [input_file] -vcodec mpeg4 -s cif -ab 32 -ac 1 -acodec libfaac [output_file].3gp </source> 85352e2cc942499fea63449807fdac585953aabd 348 331 2008-08-29T07:08:35Z OlegA 1 wikitext text/x-wiki == Любимые видео-потоки == * mms://vipnrj.yacast.net/nrj_tvhit * mms://vipnrj.yacast.net/nrj_webtv02 * mms://vipmms9.yacast.net/mcm_top * mms://video.rfn.ru/vesti_24 == Цитаты == * Стринги - это струна, натянутая на 2 чудесных барабана. * Сказки — это страшные истории, бережно подготавливающие детей к чтению газет и просмотру теленовостей. [[Изображение:brain.gif]] aadebc6c866acb323dfcd2f2471a1879d22f0385 Mw:Help:Editarea paginilor 0 142 328 2008-08-05T18:39:55Z 92.114.222.46 0 12321122332 wikitext text/x-wiki 1312222222222222222222222222222222222222222222222222222222222222222222222211111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111123213213212312321 45d299b2315a588cfe96a03d045c478067e369d2 329 328 2008-08-05T19:56:25Z VasileVsx 2 restaurarea paginii wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 Temp/LinuxFest/previous 0 143 332 2008-08-12T14:38:54Z VasileVsx 2 Pagină nouă: Cum a fost? LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda stand... wikitext text/x-wiki Cum a fost? LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda standardelor deschise, software'ului liber, instruire şi supportul comunităţii Linux. Fieacare an festivalul adună peste 200 de participanţi, printre care se numără atît specialişti IT a companiilor majore din republica, cît şi utilizatori începători. Programul festivalului constant include sessiunea de rapoarte, concursurilor intelectuale şi sportive, forum deschis şi, aşa numitul, installfest. Deja o tradiţie bună este de a iniţia festivalul cu sesiunea de rapoarte. Conceptul său este apropiat de dialog, fiecare avînd posibilitatea de a înainta întrebări pe raport şi a dezvolta tematica dată. cb3fe40beeb8728ce29364dc2994fe9f461358c3 333 332 2008-08-12T14:50:33Z VasileVsx 2 wikitext text/x-wiki == Cum a fost? == LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda standardelor deschise, software'ului liber, instruire şi supportul comunităţii Linux. Fieacare an festivalul adună peste 200 de participanţi, printre care se numără atît specialişti IT a companiilor majore din republica, cît şi utilizatori începători. Programul festivalului constant include sessiunea de rapoarte, concursurilor intelectuale şi sportive, forum deschis şi, aşa numitul, installfest. Deja o tradiţie bună este de a iniţia festivalul cu sesiunea de rapoarte. Conceptul său este apropiat de dialog, fiecare avînd posibilitatea de a înainta întrebări pe raport şi a dezvolta tematica dată. == Rapoartele anului 2007 == "MDSF Moldavian Source Forge Project" (rom) — Andrei Ermicioi aka erani "Linux şi WEB 2.0" (rus) — Serghey Rodin aka skid "Cisco Network Academy Presentation" (rom) — Dumitru Iepure "Security Solutions" (rus) — Maxim Gusakov aka cYbIsTeR "Eclipse — cuceritorul codului" (rus) — Nick Odobescu aka boo! "Moldavian Development" (rom) — Mihail Livitchi aka krebst "Remsys şi OpenSource" (rus) — Konstantin Garchev aka Nafanya "Moldova suverană şi Linux" (rus) — Alexey Lazarenko aka lalexui "SoftProm Product Presentation (RedHat, Nero, etc)" (rus) — Iurii Mindrescu "Web based bandwidth monitoring tool" (rus) — Victor aka Acidplace == Rapoartele anului 2006 == "Programare 3D în Linux — XGL" (rus) — Maxim Gusakov aka cYbIsTeR "Linux kernel 2.6" (rom)— Neceaev Nicu aka raptor, Lucean Alexandru aka freejerk "Facem cunoştinţă cu Asterisk" (rus) — Maxim Litniţkii aka litnimax "Linux, 15 ani împreună" (rus) — Serghei Polovinkin aka young "Monowall - soluţie de casă în 5 minute" (rus) — IRON "Linux returnarea investiţiilor — ROI" (rus) — Burţev Alexandru aka burus "Utilizarea Linux în Moldova" (rus) — Serghei Rodin aka skid == Rapoartele anului 2005 == "Istoricul creării Linux" (rom) — Grigore Răileanu aka GR "Proiectul Linux.MD — ce, de ce şi pentru ce" (rus) — Serghei Rodin aka skid "proiectul LUG.MD — grupul utilizatorilor linux din Moldova" (rom) — Lucean Alexandru aka freejerk "Idealogia Free Software" (rus) — Serghei Rodin aka skid "Limbajul de programare C" (rom) — Nicorici Viorel aka Visual "OpenSource — stilul me de viaţă sau istoricul consursului Hard&Soft" (rus) Burţev Alexandru aka burus ce80c4a816aa6ff88f0c556d8edd5efdbc0fb35b 334 333 2008-08-12T14:54:32Z VasileVsx 2 wikitext text/x-wiki == Cum a fost? == LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda standardelor deschise, software'ului liber, instruire şi supportul comunităţii Linux. Fieacare an festivalul adună peste 200 de participanţi, printre care se numără atît specialişti IT a companiilor majore din republica, cît şi utilizatori începători. Programul festivalului constant include sessiunea de rapoarte, concursurilor intelectuale şi sportive, forum deschis şi, aşa numitul, installfest. Deja o tradiţie bună este de a iniţia festivalul cu sesiunea de rapoarte. Conceptul său este apropiat de dialog, fiecare avînd posibilitatea de a înainta întrebări pe raport şi a dezvolta tematica dată. == Rapoartele anului 2007 == "MDSF Moldavian Source Forge Project" (rom) — Andrei Ermicioi aka erani "Linux şi WEB 2.0" (rus) — Serghey Rodin aka skid "Cisco Network Academy Presentation" (rom) — Dumitru Iepure "Security Solutions" (rus) — Maxim Gusakov aka cYbIsTeR "Eclipse — cuceritorul codului" (rus) — Nick Odobescu aka boo! "Moldavian Development" (rom) — Mihail Livitchi aka krebst "Remsys şi OpenSource" (rus) — Konstantin Garchev aka Nafanya "Moldova suverană şi Linux" (rus) — Alexey Lazarenko aka lalexui "SoftProm Product Presentation (RedHat, Nero, etc)" (rus) — Iurii Mindrescu "Web based bandwidth monitoring tool" (rus) — Victor aka Acidplace == Rapoartele anului 2006 == "Programare 3D în Linux — XGL" (rus) — Maxim Gusakov aka cYbIsTeR "Linux kernel 2.6" (rom)— Neceaev Nicu aka raptor, Lucean Alexandru aka freejerk "Facem cunoştinţă cu Asterisk" (rus) — Maxim Litniţkii aka litnimax "Linux, 15 ani împreună" (rus) — Serghei Polovinkin aka young "Monowall - soluţie de casă în 5 minute" (rus) — IRON "Linux returnarea investiţiilor — ROI" (rus) — Burţev Alexandru aka burus "Utilizarea Linux în Moldova" (rus) — Serghei Rodin aka skid == Rapoartele anului 2005 == "Istoricul creării Linux" (rom) — Grigore Răileanu aka GR "Proiectul Linux.MD — ce, de ce şi pentru ce" (rus) — Serghei Rodin aka skid "proiectul LUG.MD — grupul utilizatorilor linux din Moldova" (rom) — Lucean Alexandru aka freejerk "Idealogia Free Software" (rus) — Serghei Rodin aka skid "Limbajul de programare C" (rom) — Nicorici Viorel aka Visual "OpenSource — stilul me de viaţă sau istoricul consursului Hard&Soft" (rus) Burţev Alexandru aka burus ---- Отдельное внимание стоит уделить слушателям докладов. Это внимательная аудитория, всегда готовая поддержать докладчика и ей не страшен ни дождь, ни снег. После докладов начинается развлекательная программа. Она наполнена веселыми конкурсами, принять участие в которых может каждый. Помимо уже знакомых конкурсов, в которых определяется кто все-таки "рулит", а кто нет на поприще Linux vs FreeBSD в прошлом году был проведен командный турнир гуру. Вне всяких сомнений, что скучающих людей на фестивале найти нельзя. Кто рассекает на кораблях, которые находятся в распоряжение участников фестиваля, воздушные волны, а кто и вполне водяные. Так или иначе развлечение находит каждый. Кульминацией фестиваля по праву можно считать открытый форум, в котором принимают участие абсолютно все. Из скамеек сооружается окружность, так чтобы участники могли беспрепятственно общаться. Обсуждается буквально все, начиная от проблем, с которыми сталкиваются новички при установке того или иного программного обеспечения, до образовательной системы в нашей стране. Продуктивность такого общения очевидна. Люди разных профессий (дизайнеры, программисты, администраторы, бизнесмены и т.д.) и интересов делятся своим мнением, и могут задать вопрос на интересующую их тему при этом получают развернутый ответ от широкого круга специалистов присутствующих на фестивале. Порой дебаты бывают очень горячими. Ближе к вечеру открывается install fest, который и подитоживает программу фестиваля. Install Fest проходит под эгидой лучших специалистов молдавского linux сообщества. Идея этого мероприятия заключается в массовой установке свободного программного обеспечения с целью показать новичкам весь процесс от "А" до "Я". Желающие могут приносить свои компьютеры и попробовать установить Linux или решить какие либо проблемы с их операционной системой вместе с опытными пользователям 79fe9c4c6a9df6f6bec42714cc9be305dea5fe01 335 334 2008-08-12T15:03:41Z VasileVsx 2 wikitext text/x-wiki == Cum a fost? == LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda standardelor deschise, software'ului liber, instruire şi supportul comunităţii Linux. Fieacare an festivalul adună peste 200 de participanţi, printre care se numără atît specialişti IT a companiilor majore din republica, cît şi utilizatori începători. Programul festivalului constant include sessiunea de rapoarte, concursurilor intelectuale şi sportive, forum deschis şi, aşa numitul, installfest. Deja o tradiţie bună este de a iniţia festivalul cu sesiunea de rapoarte. Conceptul său este apropiat de dialog, fiecare avînd posibilitatea de a înainta întrebări pe raport şi a dezvolta tematica dată. == Rapoartele anului 2007 == "MDSF Moldavian Source Forge Project" (rom) — Andrei Ermicioi aka erani "Linux şi WEB 2.0" (rus) — Serghey Rodin aka skid "Cisco Network Academy Presentation" (rom) — Dumitru Iepure "Security Solutions" (rus) — Maxim Gusakov aka cYbIsTeR "Eclipse — cuceritorul codului" (rus) — Nick Odobescu aka boo! "Moldavian Development" (rom) — Mihail Livitchi aka krebst "Remsys şi OpenSource" (rus) — Konstantin Garchev aka Nafanya "Moldova suverană şi Linux" (rus) — Alexey Lazarenko aka lalexui "SoftProm Product Presentation (RedHat, Nero, etc)" (rus) — Iurii Mindrescu "Web based bandwidth monitoring tool" (rus) — Victor aka Acidplace == Rapoartele anului 2006 == "Programare 3D în Linux — XGL" (rus) — Maxim Gusakov aka cYbIsTeR "Linux kernel 2.6" (rom)— Neceaev Nicu aka raptor, Lucean Alexandru aka freejerk "Facem cunoştinţă cu Asterisk" (rus) — Maxim Litniţkii aka litnimax "Linux, 15 ani împreună" (rus) — Serghei Polovinkin aka young "Monowall - soluţie de casă în 5 minute" (rus) — IRON "Linux returnarea investiţiilor — ROI" (rus) — Burţev Alexandru aka burus "Utilizarea Linux în Moldova" (rus) — Serghei Rodin aka skid == Rapoartele anului 2005 == "Istoricul creării Linux" (rom) — Grigore Răileanu aka GR "Proiectul Linux.MD — ce, de ce şi pentru ce" (rus) — Serghei Rodin aka skid "Proiectul LUG.MD — grupul utilizatorilor linux din Moldova" (rom) — Lucean Alexandru aka freejerk "Idealogia Free Software" (rus) — Serghei Rodin aka skid "Limbajul de programare C" (rom) — Nicorici Viorel aka Visual "OpenSource — stilul me de viaţă sau istoricul consursului Hard&Soft" (rus) Burţev Alexandru aka burus ---- Отдельное внимание стоит уделить слушателям докладов. Это внимательная аудитория, всегда готовая поддержать докладчика и ей не страшен ни дождь, ни снег. После докладов начинается развлекательная программа. Она наполнена веселыми конкурсами, принять участие в которых может каждый. Помимо уже знакомых конкурсов, в которых определяется кто все-таки "рулит", а кто нет на поприще Linux vs FreeBSD в прошлом году был проведен командный турнир гуру. Вне всяких сомнений, что скучающих людей на фестивале найти нельзя. Кто рассекает на кораблях, которые находятся в распоряжение участников фестиваля, воздушные волны, а кто и вполне водяные. Так или иначе развлечение находит каждый. Кульминацией фестиваля по праву можно считать открытый форум, в котором принимают участие абсолютно все. Из скамеек сооружается окружность, так чтобы участники могли беспрепятственно общаться. Обсуждается буквально все, начиная от проблем, с которыми сталкиваются новички при установке того или иного программного обеспечения, до образовательной системы в нашей стране. Продуктивность такого общения очевидна. Люди разных профессий (дизайнеры, программисты, администраторы, бизнесмены и т.д.) и интересов делятся своим мнением, и могут задать вопрос на интересующую их тему при этом получают развернутый ответ от широкого круга специалистов присутствующих на фестивале. Cîteodată dezbaterele devin destul de pasinoate. Mai spre seară se deschide install fest, care finalizează programul festivalului. Install Fest se petrece sub egida celor mai buni specialişti IT ai comunităţii Linux din Republica Moldova. Ideea acestui eveniment constă în instalarea în masă a software'ului liber cu scopul demonstrării începătorilor procesului de la început pînă la sfîrşit. Doritorii pot aduce computatoarele proprii pentru a instala Linux sau primi asistenţă la soluţionarea problemelor de la utilizatorii experimentaţi. 9da6f958f20ff9f0e013c42c838a238b6df4b16b 336 335 2008-08-12T15:28:36Z VasileVsx 2 wikitext text/x-wiki == Cum a fost? == LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda standardelor deschise, software'ului liber, instruire şi supportul comunităţii Linux. Fieacare an festivalul adună peste 200 de participanţi, printre care se numără atît specialişti IT a companiilor majore din republica, cît şi utilizatori începători. Programul festivalului constant include sessiunea de rapoarte, concursurilor intelectuale şi sportive, forum deschis şi, aşa numitul, installfest. Deja o tradiţie bună este de a iniţia festivalul cu sesiunea de rapoarte. Conceptul său este apropiat de dialog, fiecare avînd posibilitatea de a înainta întrebări pe raport şi a dezvolta tematica dată. == Rapoartele anului 2007 == "MDSF Moldavian Source Forge Project" (rom) — Andrei Ermicioi aka erani "Linux şi WEB 2.0" (rus) — Serghey Rodin aka skid "Cisco Network Academy Presentation" (rom) — Dumitru Iepure "Security Solutions" (rus) — Maxim Gusakov aka cYbIsTeR "Eclipse — cuceritorul codului" (rus) — Nick Odobescu aka boo! "Moldavian Development" (rom) — Mihail Livitchi aka krebst "Remsys şi OpenSource" (rus) — Konstantin Garchev aka Nafanya "Moldova suverană şi Linux" (rus) — Alexey Lazarenko aka lalexui "SoftProm Product Presentation (RedHat, Nero, etc)" (rus) — Iurii Mindrescu "Web based bandwidth monitoring tool" (rus) — Victor aka Acidplace == Rapoartele anului 2006 == "Programare 3D în Linux — XGL" (rus) — Maxim Gusakov aka cYbIsTeR "Linux kernel 2.6" (rom)— Neceaev Nicu aka raptor, Lucean Alexandru aka freejerk "Facem cunoştinţă cu Asterisk" (rus) — Maxim Litniţkii aka litnimax "Linux, 15 ani împreună" (rus) — Serghei Polovinkin aka young "Monowall - soluţie de casă în 5 minute" (rus) — IRON "Linux returnarea investiţiilor — ROI" (rus) — Burţev Alexandru aka burus "Utilizarea Linux în Moldova" (rus) — Serghei Rodin aka skid == Rapoartele anului 2005 == "Istoricul creării Linux" (rom) — Grigore Răileanu aka GR "Proiectul Linux.MD — ce, de ce şi pentru ce" (rus) — Serghei Rodin aka skid "Proiectul LUG.MD — grupul utilizatorilor linux din Moldova" (rom) — Lucean Alexandru aka freejerk "Idealogia Free Software" (rus) — Serghei Rodin aka skid "Limbajul de programare C" (rom) — Nicorici Viorel aka Visual "OpenSource — stilul me de viaţă sau istoricul consursului Hard&Soft" (rus) Burţev Alexandru aka burus ---- O notă specială oferim auditoriului - sînt atenţi şi mereu suportivi. şi nu se tem de ploi şi vînturi. După rapoarte urmează programul distractiv. În concursurile hazlii poate participa fiecare. Printre concursurile uzuale cu scopul de a determina cine totuşi "rulezz" în bătălia Linux vs FreeBSD, anul trecut a avut loc şi turnir echipelor guru. Incontestabil este faptul că nu vei găsi om plictisit la festival. Unii se scaldă în valurile lacului, alţii navighează pe corabiile oferite participanţilor festivalului. Partea sa de diverstisment o are fiecare. Кульминацией фестиваля по праву можно считать открытый форум, в котором принимают участие абсолютно все. Из скамеек сооружается окружность, так чтобы участники могли беспрепятственно общаться. Обсуждается буквально все, начиная от проблем, с которыми сталкиваются новички при установке того или иного программного обеспечения, до образовательной системы в нашей стране. Продуктивность такого общения очевидна. Люди разных профессий (дизайнеры, программисты, администраторы, бизнесмены и т.д.) и интересов делятся своим мнением, и могут задать вопрос на интересующую их тему при этом получают развернутый ответ от широкого круга специалистов присутствующих на фестивале. Cîteodată dezbaterele devin destul de pasinoate. Mai spre seară se deschide install fest, care finalizează programul festivalului. Install Fest se petrece sub egida celor mai buni specialişti IT ai comunităţii Linux din Republica Moldova. Ideea acestui eveniment constă în instalarea în masă a software'ului liber cu scopul demonstrării începătorilor procesului de la început pînă la sfîrşit. Doritorii pot aduce computatoarele proprii pentru a instala Linux sau primi asistenţă la soluţionarea problemelor de la utilizatorii experimentaţi. 3bf9964f535103f5a4d71cd483232457cf80ddfd 337 336 2008-08-12T16:46:16Z VasileVsx 2 wikitext text/x-wiki == Cum a fost? == LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda standardelor deschise, software'ului liber, instruire şi supportul comunităţii Linux. Fieacare an festivalul adună peste 200 de participanţi, printre care se numără atît specialişti IT a companiilor majore din republica, cît şi utilizatori începători. Programul festivalului constant include sessiunea de rapoarte, concursurilor intelectuale şi sportive, forum deschis şi, aşa numitul, installfest. Deja o tradiţie bună este de a iniţia festivalul cu sesiunea de rapoarte. Conceptul său este apropiat de dialog, fiecare avînd posibilitatea de a înainta întrebări pe raport şi a dezvolta tematica dată. == Rapoartele anului 2007 == "MDSF Moldavian Source Forge Project" (rom) — Andrei Ermicioi aka erani "Linux şi WEB 2.0" (rus) — Serghey Rodin aka skid "Cisco Network Academy Presentation" (rom) — Dumitru Iepure "Security Solutions" (rus) — Maxim Gusakov aka cYbIsTeR "Eclipse — cuceritorul codului" (rus) — Nick Odobescu aka boo! "Moldavian Development" (rom) — Mihail Livitchi aka krebst "Remsys şi OpenSource" (rus) — Konstantin Garchev aka Nafanya "Moldova suverană şi Linux" (rus) — Alexey Lazarenko aka lalexui "SoftProm Product Presentation (RedHat, Nero, etc)" (rus) — Iurii Mindrescu "Web based bandwidth monitoring tool" (rus) — Victor aka Acidplace == Rapoartele anului 2006 == "Programare 3D în Linux — XGL" (rus) — Maxim Gusakov aka cYbIsTeR "Linux kernel 2.6" (rom)— Neceaev Nicu aka raptor, Lucean Alexandru aka freejerk "Facem cunoştinţă cu Asterisk" (rus) — Maxim Litniţkii aka litnimax "Linux, 15 ani împreună" (rus) — Serghei Polovinkin aka young "Monowall - soluţie de casă în 5 minute" (rus) — IRON "Linux returnarea investiţiilor — ROI" (rus) — Burţev Alexandru aka burus "Utilizarea Linux în Moldova" (rus) — Serghei Rodin aka skid == Rapoartele anului 2005 == "Istoricul creării Linux" (rom) — Grigore Răileanu aka GR "Proiectul Linux.MD — ce, de ce şi pentru ce" (rus) — Serghei Rodin aka skid "Proiectul LUG.MD — grupul utilizatorilor linux din Moldova" (rom) — Lucean Alexandru aka freejerk "Idealogia Free Software" (rus) — Serghei Rodin aka skid "Limbajul de programare C" (rom) — Nicorici Viorel aka Visual "OpenSource — stilul me de viaţă sau istoricul consursului Hard&Soft" (rus) Burţev Alexandru aka burus ---- O notă specială oferim auditoriului - sînt atenţi şi mereu suportivi. şi nu se tem de ploi şi vînturi. După rapoarte urmează programul distractiv. În concursurile hazlii poate participa fiecare. Printre concursurile uzuale cu scopul de a determina cine totuşi "rulezz" în bătălia Linux vs FreeBSD, anul trecut a avut loc şi turnir echipelor guru. Incontestabil este faptul că nu vei găsi om plictisit la festival. Unii se scaldă în valurile lacului, alţii navighează pe corabiile oferite participanţilor festivalului. Partea sa de diverstisment o are fiecare. Forumul deschis, la care participă absolut toţi, este pe drept considerat momentul culminant al festivalului. Из скамеек сооружается окружность, так чтобы участники могли беспрепятственно общаться. Обсуждается буквально все, начиная от проблем, с которыми сталкиваются новички при установке того или иного программного обеспечения, до образовательной системы в нашей стране. Продуктивность такого общения очевидна. Люди разных профессий (дизайнеры, программисты, администраторы, бизнесмены и т.д.) и интересов делятся своим мнением, и могут задать вопрос на интересующую их тему при этом получают развернутый ответ от широкого круга специалистов присутствующих на фестивале. Cîteodată dezbaterele devin destul de pasinoate. Mai spre seară se deschide install fest, care finalizează programul festivalului. Install Fest se petrece sub egida celor mai buni specialişti IT ai comunităţii Linux din Republica Moldova. Ideea acestui eveniment constă în instalarea în masă a software'ului liber cu scopul demonstrării începătorilor procesului de la început pînă la sfîrşit. Doritorii pot aduce computatoarele proprii pentru a instala Linux sau primi asistenţă la soluţionarea problemelor de la utilizatorii experimentaţi. e31f9bb48892af3e58b8ce52787d65fcf3b7f41d 338 337 2008-08-12T17:03:49Z VasileVsx 2 wikitext text/x-wiki == Cum a fost? == LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda standardelor deschise, software'ului liber, instruire şi supportul comunităţii Linux. Fieacare an festivalul adună peste 200 de participanţi, printre care se numără atît specialişti IT a companiilor majore din republica, cît şi utilizatori începători. Programul festivalului constant include sessiunea de rapoarte, concursurilor intelectuale şi sportive, forum deschis şi, aşa numitul, installfest. Deja o tradiţie bună este de a iniţia festivalul cu sesiunea de rapoarte. Conceptul său este apropiat de dialog, fiecare avînd posibilitatea de a înainta întrebări pe raport şi a dezvolta tematica dată. == Rapoartele anului 2007 == "MDSF Moldavian Source Forge Project" (rom) — Andrei Ermicioi aka erani "Linux şi WEB 2.0" (rus) — Serghey Rodin aka skid "Cisco Network Academy Presentation" (rom) — Dumitru Iepure "Security Solutions" (rus) — Maxim Gusakov aka cYbIsTeR "Eclipse — cuceritorul codului" (rus) — Nick Odobescu aka boo! "Moldavian Development" (rom) — Mihail Livitchi aka krebst "Remsys şi OpenSource" (rus) — Konstantin Garchev aka Nafanya "Moldova suverană şi Linux" (rus) — Alexey Lazarenko aka lalexui "SoftProm Product Presentation (RedHat, Nero, etc)" (rus) — Iurii Mindrescu "Web based bandwidth monitoring tool" (rus) — Victor aka Acidplace == Rapoartele anului 2006 == "Programare 3D în Linux — XGL" (rus) — Maxim Gusakov aka cYbIsTeR "Linux kernel 2.6" (rom)— Neceaev Nicu aka raptor, Lucean Alexandru aka freejerk "Facem cunoştinţă cu Asterisk" (rus) — Maxim Litniţkii aka litnimax "Linux, 15 ani împreună" (rus) — Serghei Polovinkin aka young "Monowall - soluţie de casă în 5 minute" (rus) — IRON "Linux returnarea investiţiilor — ROI" (rus) — Burţev Alexandru aka burus "Utilizarea Linux în Moldova" (rus) — Serghei Rodin aka skid == Rapoartele anului 2005 == "Istoricul creării Linux" (rom) — Grigore Răileanu aka GR "Proiectul Linux.MD — ce, de ce şi pentru ce" (rus) — Serghei Rodin aka skid "Proiectul LUG.MD — grupul utilizatorilor linux din Moldova" (rom) — Lucean Alexandru aka freejerk "Idealogia Free Software" (rus) — Serghei Rodin aka skid "Limbajul de programare C" (rom) — Nicorici Viorel aka Visual "OpenSource — stilul me de viaţă sau istoricul consursului Hard&Soft" (rus) Burţev Alexandru aka burus ---- O notă specială oferim auditoriului - sînt atenţi şi mereu suportivi. şi nu se tem de ploi şi vînturi. După rapoarte urmează programul distractiv. În concursurile hazlii poate participa fiecare. Printre concursurile uzuale cu scopul de a determina cine totuşi "rulezz" în bătălia Linux vs FreeBSD, anul trecut a avut loc şi turnir echipelor guru. Incontestabil este faptul că nu vei găsi om plictisit la festival. Unii se scaldă în valurile lacului, alţii navighează pe corabiile oferite participanţilor festivalului. Partea sa de diverstisment o are fiecare. Forumul deschis, la care participă absolut toţi, este pe drept considerat momentul culminant al festivalului. Forumul propriu zis este construit din băncile plasate circular. Se discută orice fără limite, începînd cu probleme întîlnite la instalarea sistemelor de operare pînă sistemul educaţional în republică. Eficacitatea unei asemenea activităţi este evidentă. Oamenii ce posedă diferite profesii (designer'ii, dezvoltatori, administratori, oameni de afacere şi alţii) şi insterese exprimă opinii, discută, întreabă şi primesc răspuns de la largul grup de specialişti prezenţi la festival. Cîteodată dezbaterele devin destul de pasinoate. Mai spre seară se deschide install fest, care finalizează programul festivalului. Install Fest se petrece sub egida celor mai buni specialişti IT ai comunităţii Linux din Republica Moldova. Ideea acestui eveniment constă în instalarea în masă a software'ului liber cu scopul demonstrării începătorilor procesului de la început pînă la sfîrşit. Doritorii pot aduce computatoarele proprii pentru a instala Linux sau primi asistenţă la soluţionarea problemelor de la utilizatorii experimentaţi. 08ccd66f5a4793fdac6be2af98a507929da2164f 339 338 2008-08-12T17:06:29Z VasileVsx 2 wikitext text/x-wiki == Cum a fost? == LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda standardelor deschise, software'ului liber, instruire şi supportul comunităţii Linux. Fieacare an festivalul adună peste 200 de participanţi, printre care se numără atît specialişti IT a companiilor majore din republica, cît şi utilizatori începători. Programul festivalului constant include sessiunea de rapoarte, concursurilor intelectuale şi sportive, forum deschis şi, aşa numitul, installfest. Deja o tradiţie bună este de a iniţia festivalul cu sesiunea de rapoarte. Conceptul său este apropiat de dialog, fiecare avînd posibilitatea de a înainta întrebări pe raport şi a dezvolta tematica dată. == Rapoartele anului 2007 == "MDSF Moldavian Source Forge Project" (rom) — Andrei Ermicioi aka erani "Linux şi WEB 2.0" (rus) — Serghey Rodin aka skid "Cisco Network Academy Presentation" (rom) — Dumitru Iepure "Security Solutions" (rus) — Maxim Gusakov aka cYbIsTeR "Eclipse — cuceritorul codului" (rus) — Nick Odobescu aka boo! "Moldavian Development" (rom) — Mihail Livitchi aka krebst "Remsys şi OpenSource" (rus) — Konstantin Garchev aka Nafanya "Moldova suverană şi Linux" (rus) — Alexey Lazarenko aka lalexui "SoftProm Product Presentation (RedHat, Nero, etc)" (rus) — Iurii Mindrescu "Web based bandwidth monitoring tool" (rus) — Victor aka Acidplace == Rapoartele anului 2006 == "Programare 3D în Linux — XGL" (rus) — Maxim Gusakov aka cYbIsTeR "Linux kernel 2.6" (rom)— Neceaev Nicu aka raptor, Lucean Alexandru aka freejerk "Facem cunoştinţă cu Asterisk" (rus) — Maxim Litniţkii aka litnimax "Linux, 15 ani împreună" (rus) — Serghei Polovinkin aka young "Monowall - soluţie de casă în 5 minute" (rus) — IRON "Linux returnarea investiţiilor — ROI" (rus) — Burţev Alexandru aka burus "Utilizarea Linux în Moldova" (rus) — Serghei Rodin aka skid == Rapoartele anului 2005 == "Istoricul creării Linux" (rom) — Grigore Răileanu aka GR "Proiectul Linux.MD — ce, de ce şi pentru ce" (rus) — Serghei Rodin aka skid "Proiectul LUG.MD — grupul utilizatorilor linux din Moldova" (rom) — Lucean Alexandru aka freejerk "Idealogia Free Software" (rus) — Serghei Rodin aka skid "Limbajul de programare C" (rom) — Nicorici Viorel aka Visual "OpenSource — stilul me de viaţă sau istoricul consursului Hard&Soft" (rus) Burţev Alexandru aka burus ---- O notă specială oferim auditoriului - sînt atenţi şi mereu suportivi. şi nu se tem de ploi şi vînturi. După rapoarte urmează programul distractiv. În concursurile hazlii poate participa fiecare. Printre concursurile uzuale cu scopul de a determina cine totuşi "rulezz" în bătălia Linux vs FreeBSD, anul trecut a avut loc şi turnir echipelor guru. Incontestabil este faptul că nu vei găsi om plictisit la festival. Unii se scaldă în valurile lacului, alţii navighează pe corăbiile oferite participanţilor festivalului. Partea sa de divertisment o are fiecare. Forumul deschis, la care participă absolut toţi, este pe drept considerat momentul culminant al festivalului. Forumul propriu zis este construit din băncile plasate circular. Se discută orice fără limite, începînd cu probleme întîlnite la instalarea sistemelor de operare pînă sistemul educaţional în republică. Eficacitatea unei asemenea activităţi este evidentă. Oamenii ce posedă diferite profesii (designer'ii, dezvoltatori, administratori, oameni de afacere şi alţii) şi interese exprimă opinii, discută, întreabă şi primesc răspuns de la largul grup de specialişti prezenţi la festival. Cîteodată dezbaterile devin destul de pasionate. Mai spre seară se deschide install fest, care finalizează programul festivalului. Install Fest se petrece sub egida celor mai buni specialişti IT ai comunităţii Linux din Republica Moldova. Ideea acestui eveniment constă în instalarea în masă a software'ului liber cu scopul demonstrării începătorilor procesului de la început pînă la sfîrşit. Doritorii pot aduce computatoarele proprii pentru a instala Linux sau primi asistenţă la soluţionarea problemelor de la utilizatorii experimentaţi. 2fa0963d2b0ce2b53b863117256183834027a323 340 339 2008-08-12T17:08:09Z VasileVsx 2 a mutat [[Utilizator:VasileVsx]] la [[Temp/LinuxFest/previous]] wikitext text/x-wiki == Cum a fost? == LinuxFest - este proiectul social important, abil să aducă noile idei şi soluţii în comunitatea utilizatorilor Linux. Scopurile festivalului includ: propaganda standardelor deschise, software'ului liber, instruire şi supportul comunităţii Linux. Fieacare an festivalul adună peste 200 de participanţi, printre care se numără atît specialişti IT a companiilor majore din republica, cît şi utilizatori începători. Programul festivalului constant include sessiunea de rapoarte, concursurilor intelectuale şi sportive, forum deschis şi, aşa numitul, installfest. Deja o tradiţie bună este de a iniţia festivalul cu sesiunea de rapoarte. Conceptul său este apropiat de dialog, fiecare avînd posibilitatea de a înainta întrebări pe raport şi a dezvolta tematica dată. == Rapoartele anului 2007 == "MDSF Moldavian Source Forge Project" (rom) — Andrei Ermicioi aka erani "Linux şi WEB 2.0" (rus) — Serghey Rodin aka skid "Cisco Network Academy Presentation" (rom) — Dumitru Iepure "Security Solutions" (rus) — Maxim Gusakov aka cYbIsTeR "Eclipse — cuceritorul codului" (rus) — Nick Odobescu aka boo! "Moldavian Development" (rom) — Mihail Livitchi aka krebst "Remsys şi OpenSource" (rus) — Konstantin Garchev aka Nafanya "Moldova suverană şi Linux" (rus) — Alexey Lazarenko aka lalexui "SoftProm Product Presentation (RedHat, Nero, etc)" (rus) — Iurii Mindrescu "Web based bandwidth monitoring tool" (rus) — Victor aka Acidplace == Rapoartele anului 2006 == "Programare 3D în Linux — XGL" (rus) — Maxim Gusakov aka cYbIsTeR "Linux kernel 2.6" (rom)— Neceaev Nicu aka raptor, Lucean Alexandru aka freejerk "Facem cunoştinţă cu Asterisk" (rus) — Maxim Litniţkii aka litnimax "Linux, 15 ani împreună" (rus) — Serghei Polovinkin aka young "Monowall - soluţie de casă în 5 minute" (rus) — IRON "Linux returnarea investiţiilor — ROI" (rus) — Burţev Alexandru aka burus "Utilizarea Linux în Moldova" (rus) — Serghei Rodin aka skid == Rapoartele anului 2005 == "Istoricul creării Linux" (rom) — Grigore Răileanu aka GR "Proiectul Linux.MD — ce, de ce şi pentru ce" (rus) — Serghei Rodin aka skid "Proiectul LUG.MD — grupul utilizatorilor linux din Moldova" (rom) — Lucean Alexandru aka freejerk "Idealogia Free Software" (rus) — Serghei Rodin aka skid "Limbajul de programare C" (rom) — Nicorici Viorel aka Visual "OpenSource — stilul me de viaţă sau istoricul consursului Hard&Soft" (rus) Burţev Alexandru aka burus ---- O notă specială oferim auditoriului - sînt atenţi şi mereu suportivi. şi nu se tem de ploi şi vînturi. După rapoarte urmează programul distractiv. În concursurile hazlii poate participa fiecare. Printre concursurile uzuale cu scopul de a determina cine totuşi "rulezz" în bătălia Linux vs FreeBSD, anul trecut a avut loc şi turnir echipelor guru. Incontestabil este faptul că nu vei găsi om plictisit la festival. Unii se scaldă în valurile lacului, alţii navighează pe corăbiile oferite participanţilor festivalului. Partea sa de divertisment o are fiecare. Forumul deschis, la care participă absolut toţi, este pe drept considerat momentul culminant al festivalului. Forumul propriu zis este construit din băncile plasate circular. Se discută orice fără limite, începînd cu probleme întîlnite la instalarea sistemelor de operare pînă sistemul educaţional în republică. Eficacitatea unei asemenea activităţi este evidentă. Oamenii ce posedă diferite profesii (designer'ii, dezvoltatori, administratori, oameni de afacere şi alţii) şi interese exprimă opinii, discută, întreabă şi primesc răspuns de la largul grup de specialişti prezenţi la festival. Cîteodată dezbaterile devin destul de pasionate. Mai spre seară se deschide install fest, care finalizează programul festivalului. Install Fest se petrece sub egida celor mai buni specialişti IT ai comunităţii Linux din Republica Moldova. Ideea acestui eveniment constă în instalarea în masă a software'ului liber cu scopul demonstrării începătorilor procesului de la început pînă la sfîrşit. Doritorii pot aduce computatoarele proprii pentru a instala Linux sau primi asistenţă la soluţionarea problemelor de la utilizatorii experimentaţi. 2fa0963d2b0ce2b53b863117256183834027a323 Участник:VasileVsx 2 144 341 2008-08-12T17:08:09Z VasileVsx 2 a mutat [[Utilizator:VasileVsx]] la [[Temp/LinuxFest/previous]] wikitext text/x-wiki #REDIRECT [[Temp/LinuxFest/previous]] 56428700392089a84f574019a9aea3005c56d826 342 341 2008-08-12T17:11:58Z VasileVsx 2 Şters conţinutul paginii wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 343 342 2008-08-12T17:12:40Z VasileVsx 2 wikitext text/x-wiki [[Temp/LinuxFest/previous]] 809ad027cccce5962456916c7c1d1b11b2b6d614 350 343 2008-09-05T09:30:32Z VasileVsx 2 wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py b93b7b8754fd6f26e9937083b632bc6df0c6efa1 351 350 2008-09-20T10:47:56Z VasileVsx 2 wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org f9a42289fd4abbef2135e9cf4749f2d85e856bed 367 351 2008-11-24T09:30:44Z VasileVsx 2 wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ d905818cb242fb20a194f2bc164a17fd66a01512 368 367 2008-11-24T09:42:09Z VasileVsx 2 wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia cadf907a6af4f77187fd618db6eb13c3b49fbed7 369 368 2008-11-26T08:58:56Z VasileVsx 2 ssh DNAT wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm optiunea -v - vebose 67676bb50824418ced441a9df33288d7fc2976b9 370 369 2008-11-26T09:08:18Z VasileVsx 2 Cum de nu lăsat "urme" wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm opțiunea -v - verbose ==== Cum de nu lăsat "urme" ==== Fie avem access la sudo pe un computer. Avem nevoie ca unele operații a noastre să rămînă private. Pentru ca alt administrator să nu afle istoricul comenzilor administrative: 1. utilizăm sudo numai pentru a porni bash shell, și nu pentru a executa comenzi propriu zise. Toate comenzile lansate cu sudo nimeresc în jurnale de sistem. Deci utilizăm <code>sudo su -</code> pentru a ridica nivelul de privilegii 2. Toate comenzile bash (shell implicit în majoritatea sistemelor linux) se salvează în fișierul ~/.bash_history. Îl putem șterge, dar la ieșire el va fi recreat cu istoricul păstrat în memorie operativă. Deci pentru a ascunde lista comenzilor din sesiunea curentă noi "ucidem" shell current (mai exact - părintele său, comanda su) ;) <code>kill $PPID</code> 64e5066828b689960fec9bd0ff63fc8506e886ab 371 370 2008-11-26T13:23:02Z VasileVsx 2 wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm opțiunea -v - verbose ==== Cum de nu lăsat "urme" ==== Fie avem access la sudo pe un computer. Avem nevoie ca unele operații a noastre să rămînă private. Pentru ca alt administrator să nu afle istoricul comenzilor administrative: 1. utilizăm sudo numai pentru a porni bash shell, și nu pentru a executa comenzi propriu zise. Toate comenzile lansate cu sudo nimeresc în jurnale de sistem. Deci utilizăm <code>sudo su -</code> pentru a ridica nivelul de privilegii 2. Toate comenzile bash (shell implicit în majoritatea sistemelor linux) se salvează în fișierul ~/.bash_history. Îl putem șterge, dar la ieșire el va fi recreat cu istoricul păstrat în memorie operativă. Deci pentru a ascunde lista comenzilor din sesiunea curentă noi "ucidem" shell current (mai exact - părintele său, comanda su) ;) <code>kill $PPID</code> ==== F10 upgrade ==== (14:52:53) skid: кстати ты случайно не знаешь что случилось с лэйаутами в f10 ? (14:53:13) skid: переключение на разные языки не очень работает нормально (15:11:53) vchelban@gmail.com/WorkFA0EBD46: Znaiu, vsio znaiu :D (15:12:04) vchelban@gmail.com/WorkFA0EBD46: Ia je v nei jivu s F10 Beta (15:12:39) vchelban@gmail.com/WorkFA0EBD46: Ti navernoe kinul svoi xorg.conf starii (15:13:00) vchelban@gmail.com/WorkFA0EBD46: Tak vot - diver klaviaturi nujno ispolizovati evdev (15:13:07) vchelban@gmail.com/WorkFA0EBD46: a ne keyboard, ne kbd (15:13:37) vchelban@gmail.com/WorkFA0EBD46: I voobshe - 4asto fedora 10 neploho rabotaet voobshe bez xorg.conf (15:13:56) vchelban@gmail.com/WorkFA0EBD46: Takje esli u tebia bil ~/.Xmodmap - lu4she eko poka otkliu4iti 0a2b6550bf5ad502b5ad4275aa292b2997dcce03 Создание 3GP формата для мобильного телефона 0 145 344 2008-08-13T12:10:15Z OlegA 1 Новая: Для создания понадобится пакет ffmpeg, который доступен в репо livna. Для установки просто выполните коман... wikitext text/x-wiki Для создания понадобится пакет ffmpeg, который доступен в репо livna. Для установки просто выполните команду, если у Вас добавлено репо livna в yum: <source lang="bash"> # yum install ffmpeg </source> Большинство телефонов читают формат mpeg4. Рассмотрим создание видео-файла с использованием 2-х проходов для улучшения качества. В данном случае в 1-ом проходе будет строится лог-файл, а во втором кодирование на основании лога 1-го прохода. Кодирование звука будем производить в формате AAC. AAC формат лучше по качеству при меньшем битрейте по с равнению с форматом mp3. Кодирование звука будет во 2-ом проходе. Теперь от теории к практике. Первый проход: <source lang="bash"> $ ffmpeg -i [INPUT_FILE] -vcodec mpeg4 -pass 1 -s [RESOLUTION] -b [VBITRATE] -an -y [OUTPUT_FILE] </source> Второй проход: <source lang="bash"> $ ffmpeg -i [INPUT_FILE] -vcodec mpeg4 -pass 2 -s [RESOLUTION] -b [VBITRATE] $ -acodec libfaac -ab [ABITRATE] -ac [1|2] -y [OUTPUT_FILE] </source> Теперь рассмотрим каждый параметр. * <code>[INPUT_FILE]</code> — входной файл, который будем перекодировать * <code>[RESOLUTION]</code> — разрешение видео, обычно (320х240), формат: ширинаХвысота * <code>[VBITRATE]</code> — видео битрейт. Если параметр не указан, то по-умолчанию 200кбит/с * <code>-y</code> — перезапись файла без запроса * <code>[ABITRATE]</code> — аудио битрейт, если параметр не указан, то используется 64кбит/с * <code>-ac 1|2</code> — количство аудио каналов. 1 — моно, 2 — стерео. * <code>[OUTPUT_FILE]</code> — выходной файл с расширением .3gp . [[Category:Статьи]] 7243cde54bc32477d07ae571c304b540d3f0d573 Обсуждение:Создание 3GP формата для мобильного телефона 1 146 345 2008-08-13T13:04:58Z VasileVsx 2 Pagină nouă: Q: А как же 3GP с AMR-NB, AMR-WB аудио кодеками? Старые трубки AAC не знают. wikitext text/x-wiki Q: А как же 3GP с AMR-NB, AMR-WB аудио кодеками? Старые трубки AAC не знают. 04ba4999315ae56261c789dc4de2218791b71a90 346 345 2008-08-13T19:30:21Z OlegA 1 wikitext text/x-wiki Q: А как же 3GP с AMR-NB, AMR-WB аудио кодеками? Старые трубки AAC не знают. Да, есть такое, только вот насколько я понял ffmpeg собран в livna без поддержки AMR. Выход есть - собрать собственный ffmpeg c поддержкой libamr 6a2e0e28dede47eea598d0aedcf366c5c34b883b 347 346 2008-08-13T19:30:44Z OlegA 1 wikitext text/x-wiki Q: А как же 3GP с AMR-NB, AMR-WB аудио кодеками? Старые трубки AAC не знают. A: Да, есть такое, только вот насколько я понял ffmpeg собран в livna без поддержки AMR. Выход есть - собрать собственный ffmpeg c поддержкой libamr 0388ecc1f810e1581d126602f317dadd271059c8 Создаем собственное правило SELinux на базе аудит сообщения 0 92 349 192 2008-09-03T08:00:55Z VasileVsx 2 add reference to Dan Walsh blog wikitext text/x-wiki {{Суперпользователь}} Многие часто выключают SELinux, полагая что от него только проблемы. На самом деле это очень полезный инструмент аудита и защиты системы. Просто надо его правльно "готовить". :) Рассмотрим простой пример - некий скрипт тянется на, скажем, 8000 порт. По умолчанию такой доступ запрещен. Но мы то знаем что это допустимо. Лечится просто: * глядим в '''/var/log/messages''', видим там что-то вроде <source lang="bash"> # grep audit /var/log/messages|tail -n 1 Oct 11 11:03:11 hostname kernel: audit(1192089791.364:4563): avc: denied { name_connect } for pid=9956 comm="python" dest=8000 \ scontext=user_u:system_r:httpd_fastcgi_script_t:s0 tcontext=system_u:object_r:soundd_port_t:s0 tclass=tcp_socket </source> * эту строку "скармливаем" audit2why: <source lang="bash"> # grep audit /var/log/messages|tail -n 1|audit2why Oct 11 11:03:11 hostname kernel: audit(1192089791.364:4563): avc: denied { name_connect } for pid=9956 comm="python" dest=8000 \ scontext=user_u:system_r:httpd_fastcgi_script_t:s0 tcontext=system_u:object_r:soundd_port_t:s0 tclass=tcp_socket Was caused by: Missing or disabled TE allow rule. Allow rules may exist but be disabled by boolean settings; check boolean settings. You can see the necessary allow rules by running audit2allow with this audit message as input. </source> * нам советуется создать разрешающие правила. Как? Просто: <source lang="bash"> # grep audit /var/log/messages|tail -n 1||audit2allow -ve -M pythonTcp8000Moin ******************** IMPORTANT *********************** To make this policy package active, execute: semodule -i pythonTcp8000Moin.pp # semodule -i pythonTcp8000Moin.pp </source> * Вот и всё. Больше информации о укрощении SELinux в Fedora вы найдете в [http://danwalsh.livejournal.com/22347.html блоге Dan Walsh'a] - одного из основных разработчиков этой системы. [[Category:Установка и настройка]] [[Category:Администрирование]] beafc4da31f2808860974b15e3700bd75cfd16d4 FAQ 0 110 352 233 2008-10-27T20:18:00Z OlegA 1 wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> или просто выполняем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Финализировать сессии на оптическом носителе === Если нужно финализировать диск с мультисесией, то необходимо выполнить команду: <source lang="bash"> # growisofs -M /dev/dvd=/dev/zero </source> где /dev/dvd - пишущий привод. Вместо /dev/dvd может быть /dev/cdrom. == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо преобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. [[ro:FAQ/ro]] 478bce6442fe9bfc472e777ae6b9edd98634a858 365 352 2008-11-21T07:39:25Z OlegA 1 wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> или просто выполняем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Финализировать сессии на оптическом носителе === Если нужно финализировать диск с мультисесией, то необходимо выполнить команду: <source lang="bash"> # growisofs -M /dev/dvd=/dev/zero </source> где /dev/dvd - пишущий привод. Вместо /dev/dvd может быть /dev/cdrom. == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо преобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. === Восcтанавливаем chmod === Стандартный chmod для директорий 755, а для файлов 644. Восстановление происходит в 2 этапа, сначала для директорий, а затем для файлов. <source lang="bash"> # find /dir -type d -print -exec chmod 755 {} \; # find /dir -type f -print -exec chmod 644 {} \; </source> [[ro:FAQ/ro]] cd1c0c0837e46c1aaeb1afa93f03d97aecf55bf0 FAQ/ro 0 112 353 232 2008-11-08T21:47:49Z VasileVsx 2 /* Я забыл пароль пользователя root. Как быть? */ wikitext text/x-wiki {{Superuser}} === Primii paşi === ==== Cum poţi afla data/ora locală? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ date </source> ==== Cum poţ afla versiune kernel şi sistem de operare? ==== Pentru a afla versiune kernel, executaţi următoarea comandă în consolă: <source lang="bash"> $ uname -a </source> Detalii <code>man uname</code> Pentru a afla versiune sistem de operare, cunoaştem cîteva metode: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch <source> Sau dacă este instalat pachetul ''redhat-lsb'': <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> ==== Cît timp a lucrat SO (Sistem de operare)? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ uptime </source> ==== Cum poate fi setat Nautilus să deschidă directorul nou în aceeaşi fereastră? ==== Activaţi opţiunea ''System->Preferinţe->Administrare fişiere->Comportament->Deschide întotdeauna în fereastră de navigare'' ==== Cum de setat altă combinaţie taste de schimbare limbaj întroducere (En-Ro, En-Ru)? ==== Dacă utilizaţi KDE, dezactivaţi motorul control tastatură incorporat. Apoi edităm fişierul <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ro(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> şi restartăm server X. În acest caz avem modificare layout tastatură cu combinatia ''Ctrl-Shift'', şi două limbaje - engleză şi română compatibilă tastatură Microsoft. Altă variantă: română pentru programatori (diferă de layout ''us'' prin faptul că caracterele cu diacritice se introduc combinând tasta ALT dreaptă şi analogului latin al caracterului: exemplu AltGr-t pentru 'ţ', AltGr-s pentru 'ş', AltGr-q pentru 'â'), rusă, modificare - tasta WinKey dreată. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> ==== Cum de lansat o comandă sau aplicaţie sin consolă cu drepturile utilizatorului root (Superutilizator) ==== În consolă executaţi <source lang="bash"> $ su - </source> şi introduceţi parolă utilizator ''root''. Sau indicînd comandă imediat <source lang="bash"> $ su - -c 'command' </source> unde ''command'' - comanda sau aplicaţie. O alternativă ar fi setarea sistemului ''sudo'' <code>man sudo</code> se recomandă pentru documentare. Ca rezultat s-ar putea executa un set anumit, sau toate comenzile cu drepturile utilizatorului ''root'', introducind sau nu parola prefixînd comanda necesară cu ''sudo'', spre exemplu <source lang="bash"> $ sudo /sbin/fdisk -l </source> Exemplu de configurare ''sudo'' pentru utilizatorul ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> noile regului pentru utilizator vor fi active cu următoarea intrare sa în sistem (nu şi în cazul dacă utilizatorul posedă deja grupa ''wheel''). ==== Cum de activat masă de lucru stil 3D ? ==== Fedora Core 5 şi mai noi suporta efecte 3D pentru manager de ferestre prin intermediul tehnologii ''AIGLX''. Iniţial ne asigurăm că placa video/driverul utilizat [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 suportă AIGLX]. Pentru lansare ''compiz'' ca manager de ferestre activati opţiunea ''System->Preferinţe->Aspect->Desktop Effects->Enable Desktop Effects'' . De asemenea puteţi instala pachetul ''compiz-fusion'', care suportă setul extins de efecte. Doar instalaţi metapachetul ce corespunde mediului de lucru utilizat: <source lang="bash"> # yum install compiz-gnome ccsm </source> sau <source lang="bash"> # yum install compiz-kde ccsm </source> Apoi îl lansati din meniul ''Aplicaţii''. ==== Unde pot fi găsite programe (pachete) pentru Fedora? ==== O mulţime de programe pot fi găsite în repozitorii standard: Fedora Everything (versiuni mai noi de Fedora 7) şi [http://fedoraproject.org/wiki/Extras Fedora Extras] (versiuni mai vechi de Fedora 7). De asemenea în Internet pot fi găsite o mulţime de repozitorii neoficiale. Printre cele mai populare se numără: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] O listă mai completă o găsiti pe pagina proiectului [http://rpmfusion.org/FedoraThirdPartyRepos RPMFusion]. În aceste repozitorii veţi găsi multe pachete adiţionale care nu pot fi incluse în repozitorii standard, dar sînt compatibile cu acestea. Există motoare de căutare pe pachete ''RPM'' utilizate în sisteme RedHat/Fedora: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] ==== Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? ==== Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> ==== Cum de setat adresa serverului proxy utilizat? ==== În mediu ''GNOME'' din meniul "Sistem->Preferinţe->Internet şi reţea->Proxy reţea". Sau în caz general din consolă, adăugaţi în fişier profil shell <code>~/.bash_profile</code> rîndurile: <source lang="cfc"> http_proxy=http://proxy:3128 export http_proxy </source> sau <source lang="cfc"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> La următoarea întrare în sistem setările vor fi active. Atenţie: unele aplicaţii au metode proprii de a defini serverul proxy utilizat. De exemplu ''yum'' cere înregistrare tip <source lang="cfc"> proxy=http://proxy:3128 </source> în fişierul său de configuraţie. ==== Cum de lansat comanda cu anumite variabile împrejurării dezactivate (env)? ==== Pentru dezactivarea unei variabile, ex. http_proxy, executăm construcţia tip: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> unde <code>[CMD]</code> - este comanda necesară. ==== Cum poate fi instalat Gecko pentru wine ==== 1. Descărcăm versiune recentă wine_gecko.cab de pe [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net] în dosarul <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Dezarhivăm cu ajutorul cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Reîncărcăm wine: <source lang="bash"> $ wineboot -r </source> ==== Cum poate fi redenumită o grupă de volume LVM ==== Pentru redenumirea LVM Group sistemului activ ne încărcăm de pe alt sistem care nu va folosi acest grup, spre exemplu Fedora LiveCD sau Fedora Install în mod ''rescue''. În ultimul caz ignorăm propunera de a monta sistemele de fisiere existente. Executăm comenzile în consolă: 1. Rulăm consola lvm: <source lang="bash"> # lvm </source> 2. Verificăm vizibilitatea grupelor: <source lang="bash"> lvm> vgdisplay </source> 3. Dezactivăm grupele active: <source lang="bash"> lvm> vgchange -a n </source> 4. şi redenumim: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Activăm grupele: <source lang="bash"> lvm> vgchange -a y </source> 6. Părăsim consola lvm: <source lang="bash"> lvm> exit </source> '''''Atenţie:''' după redenumirea, este necesar de a corecta înregistrările afectate din /etc/fstab şi de a crea din nou initrd din dosarul /boot indicând parametrul --fstab='' <source lang="bash"> # mkinitrd --fstab='' /boot/initrd-2.6.25-1.fc9.x86_64.img 2.6.25-1.fc9.x86_64 </source> === Rezolvare probleme tip === ==== rpm se blochează la toate operaţiile de la utilizatorul root. Sub utilizatorul neprivilegiat lucrează corect ==== Posibilă cauză - eronarea bazei de date RPM. În consolă executăm <source lang="bash"> # rpm --rebuilddb </source> dacă nu va ajuta, încercăm: <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> ==== Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? ==== Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Итак. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> ==== Cum poate fi schimbat nume host propriu după instalarea sistemului? ==== Edităm fişierul /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> ==== Cum de accesat resurse reţea Samba (Windows shares)? ==== Dacă cunoaştem numele complet a resursei executăm comanda (cu drepturile utilizatorulu ''root''): <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Directorul /mnt/smb trebuie creat preventiv. Pentru demontare utilizăm <code>umount.cifs</code> Pentru accesare uşoară a resurselor reţelei locale fără autentificare putem utiliza ''fusesmb'': <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Deoarce ''fusesmb'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> ==== Cum de accesat un sistem de fişiere tip FAT32? ==== Executăm comanda: <source lang="bash"> # mount -t vfat /dev/sdaX /mnt/disk_fat -o quiet </source> Directorul ''/mnt/disk_fat'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> ==== Cum de accesat sistem de fişiere tip NTFS? ==== Pentru access citire/scriere utilizăm pachetul ''ntfs-3g''. Se instalează standard (în majoriatea cazurilor pachetul dat deja va fi instalat): <source lang="bash"> # yum install ntfs-3g </source> Executăm comanda: <source lang="bash"> # mount -t ntfs /dev/sdaX /mnt/disk_ntfs -o force </source> Directorul ''/mnt/disk_ntfs'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Versiunile vechi nu permiteau montarea autmată la pornire sistem cu protecţie SELinux în mod Enforce. Pentru trecerea în mod permisiv se poate utiliza comanda: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Deoarce ''ntfs-3g'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Există şi o alternativă mai uşoară - instalăm şi rulăm utilitarul ''ntfs-config'': <source lang="bash"> # yum install ntfs-config </source> ==== Cum de dezactivat suport IPv6? ==== Executăm următorii paşi (cu drepturile utilizatorului root). 1. Edităm fişierul /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Dezactivăm firewall ipv6: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Edităm /etc/hosts. Eliminăm înregistrările ce se încem cu <code>::1</code> 4. Restartăm. ==== При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? ==== Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> ==== Как восстановить KMenu по -умолчанию? ==== Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu ==== Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? ==== Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. ==== Cum să restabilesc parola utilizatorului root? ==== Parola criptată nu poate fi aflată, dar poate fi schimbată pe altă. Pentru aceasta ne trebuie mod Singleuser (init 1). Restartăm computer și în Grub (bootloader, încărcător inițial ce permite alegerea sistemului ce va fi încărcat) apăsăm tasta 'e' peste varianta de încărcare. Apare lista comenzilor. Trecem cu taste cursor pe rîndul ce pornește cu '''kernel''', și apasăm din nou 'e'. În mod de editare adăugăm la sfîrșitul rîndului '''1''' după un spațiu. Apăsăm Enter, apoi 'b'. Sistemul se va încărca în mod text de bază (init 1). Initial sistem de fișiere este montat numai pentru citire. Trecem în mod citire scriere cu comanda: <code># mount -o rw,remount /</code> Apoi utilizăm comanda standard: <code>passwd</code>. Restartăm: <code># sync;reboot</code> ==== Что делать если не запускаются графические приложения от пользователя root? ==== Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> ==== Schimbare set de caractere implicit serverului MySQL ==== Standard serverul MySQL utilizează set de caractere <code>latin1_swedish_ci</code>, ceea ce crează uneori probleme pentru scripturi imperfecte. Pentru soluţionare edităm fişierul /etc/my.cnf, rubrica <code>[mysqld]</code>: <source lang="cfc"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Software non-nativ === ==== Cum de lansat 1С:Бухгалтерия? ==== Pentru lucrul în mod multiutilizator este necesar de utilizat [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft] (non-free software). Fedora include pachetul wine care de asemenea poae lansa 1С:Бухгалтерия. Versiunile 8.0 şi 8.1 sînt compatibile cu Wine standard din distribuţie. Începînd cu versiunea 8.1 este disponibil clasterul nativ pe Linux cu support PostgreSQL. === Util === ==== Cum de redenumit set de fişiere dintr-o listă de nume în altă? ==== Exemplu: avem 20 fisiere video în director avi/, şi 20 fişiere cu subtitrări în directorul sub/. Atunci: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> ==== При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. ==== Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> ==== MPlayer (qemu) ругается на RTC, сбита синхронизация. ==== Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> ==== При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? ==== Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. ==== Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. ==== Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от IceCast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. ==== Cum de creat o imagine ISO9660 a unui DataCD sau DVD? ==== Utilizăm comanda standard '''dd'''. Sintaxa este simplă - indicăm fişiere de intrare şi ieşire ca parametrii {{{if=}}} (de intrare) şi {{{of=}}} (de ieşire). Exemplu creare imagine ISO CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Exemplu creare imagine DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Notă:''''' parametrul ''conv=noerror,sync'' este necesar la copierea unui mediu cu errori. '''dd''' nu se va opri la erori de citire, inserând date nule în locul sectorului eronat. ==== Cum de operat cu conţinutul imaginii ISO a unui CD/DVD? ==== Fişierul ISO9660 poate fi montat cu comanda. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> unde <code>dvd_cd.iso</code> - fişier ISO, <code>/media/iso</code> - directorul unde va fi accesat (trebuie creat preventiv). Există şi instrumente grafice: isomaster, AcetoneISO, şi de consolă: fuseiso, nrg2iso care permit operarea imaginilor ISO9660 utilizatorilor neprivelegiaţi. ==== Cum de ascuns Audacious în zona de notificare (tray)? ==== Activaţi pluginul general ''Status Icon''. Întră in componenţa standard versiunilor recente ''Audacious''. ==== Cum de copiat un disc AudioCD/VideoCD? ==== Comanda ''dd'' nu poate fi utilizată în asemenea cazuri. Trebuie utilizat pachetul cdrdao. 1. Cream fisier imagine <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> vor fi create 2 fişiere: data.bin şi file.toc 2. Înregistrăm disc copie din fişiere imagine <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> parametrul ''--speed'' indică viteza de înscriere. ==== Modul multiutilizator în screen ==== Este necesar dacă o sesiune să fie accesibilă pentru mai mulţi utilizatori în mod concurent. '''screen'' implicit activează în modul unui singur utilizator - numai utilizatorul care a activat sesiunea poate să se conecteze la dînsa. Pentru mod multiutilizator executăm paşii. În director acasă a utilizatorului ce va deţine sesiunea creăm fişierul <code>.screenrc</code> şi-l completăm: <pre> multiuser on addacl <user> </pre> unde <code><user></code> - utilizatorul, ce va avea access la această sesiune screen. Mai mulţi utilizatori pot fi adăugaţi separîndu-i numele prin virgulă. Activăm ''setuid'' bitul pe executabilul screen: <source lang="bash"> # chmod +s /usr/bin/screen </source> Lansăm sesiunea: <source lang="bash"> $ screen -dmS session01 </source> Acum utilizatorii enumeraţi în <code>.screenrc</code> se pot conecta prin comanda: <source lang="bash"> $ screen -x <screen_user>/session01 </source> unde <code><screen_user></code> - nume utilizator ce deţine sesiunea. ==== Cum de modificat adresa MAC pentru o interfaţă Ethrenet? ==== Pentru a atribui temporar interfeţei cu numele eth4 adresa 00:2E:13:A1:81:77 executăm una din comenzile: <source lang="bash"> # /sbin/ip link set dev eth4 address 00:2E:13:A1:81:77 # /sbin/ifconfig eth4 hw ether 00:2E:13:A1:81:77 </source> Pentru seta adresa automat la pornire sistem, în fişierul /etc/sysconfig/networking/devices/ifcfg-eth4 adaugăm rîndul: <source lang="bash"> MACADDR=00:2E:13:A1:81:77 </source> [[ru:FAQ]] 486eea28e7e37515441723acecddde4ceafd0db9 354 353 2008-11-08T21:48:40Z VasileVsx 2 /* Cum să restabilesc parola utilizatorului root? */ wikitext text/x-wiki {{Superuser}} === Primii paşi === ==== Cum poţi afla data/ora locală? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ date </source> ==== Cum poţ afla versiune kernel şi sistem de operare? ==== Pentru a afla versiune kernel, executaţi următoarea comandă în consolă: <source lang="bash"> $ uname -a </source> Detalii <code>man uname</code> Pentru a afla versiune sistem de operare, cunoaştem cîteva metode: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch <source> Sau dacă este instalat pachetul ''redhat-lsb'': <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> ==== Cît timp a lucrat SO (Sistem de operare)? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ uptime </source> ==== Cum poate fi setat Nautilus să deschidă directorul nou în aceeaşi fereastră? ==== Activaţi opţiunea ''System->Preferinţe->Administrare fişiere->Comportament->Deschide întotdeauna în fereastră de navigare'' ==== Cum de setat altă combinaţie taste de schimbare limbaj întroducere (En-Ro, En-Ru)? ==== Dacă utilizaţi KDE, dezactivaţi motorul control tastatură incorporat. Apoi edităm fişierul <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ro(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> şi restartăm server X. În acest caz avem modificare layout tastatură cu combinatia ''Ctrl-Shift'', şi două limbaje - engleză şi română compatibilă tastatură Microsoft. Altă variantă: română pentru programatori (diferă de layout ''us'' prin faptul că caracterele cu diacritice se introduc combinând tasta ALT dreaptă şi analogului latin al caracterului: exemplu AltGr-t pentru 'ţ', AltGr-s pentru 'ş', AltGr-q pentru 'â'), rusă, modificare - tasta WinKey dreată. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> ==== Cum de lansat o comandă sau aplicaţie sin consolă cu drepturile utilizatorului root (Superutilizator) ==== În consolă executaţi <source lang="bash"> $ su - </source> şi introduceţi parolă utilizator ''root''. Sau indicînd comandă imediat <source lang="bash"> $ su - -c 'command' </source> unde ''command'' - comanda sau aplicaţie. O alternativă ar fi setarea sistemului ''sudo'' <code>man sudo</code> se recomandă pentru documentare. Ca rezultat s-ar putea executa un set anumit, sau toate comenzile cu drepturile utilizatorului ''root'', introducind sau nu parola prefixînd comanda necesară cu ''sudo'', spre exemplu <source lang="bash"> $ sudo /sbin/fdisk -l </source> Exemplu de configurare ''sudo'' pentru utilizatorul ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> noile regului pentru utilizator vor fi active cu următoarea intrare sa în sistem (nu şi în cazul dacă utilizatorul posedă deja grupa ''wheel''). ==== Cum de activat masă de lucru stil 3D ? ==== Fedora Core 5 şi mai noi suporta efecte 3D pentru manager de ferestre prin intermediul tehnologii ''AIGLX''. Iniţial ne asigurăm că placa video/driverul utilizat [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 suportă AIGLX]. Pentru lansare ''compiz'' ca manager de ferestre activati opţiunea ''System->Preferinţe->Aspect->Desktop Effects->Enable Desktop Effects'' . De asemenea puteţi instala pachetul ''compiz-fusion'', care suportă setul extins de efecte. Doar instalaţi metapachetul ce corespunde mediului de lucru utilizat: <source lang="bash"> # yum install compiz-gnome ccsm </source> sau <source lang="bash"> # yum install compiz-kde ccsm </source> Apoi îl lansati din meniul ''Aplicaţii''. ==== Unde pot fi găsite programe (pachete) pentru Fedora? ==== O mulţime de programe pot fi găsite în repozitorii standard: Fedora Everything (versiuni mai noi de Fedora 7) şi [http://fedoraproject.org/wiki/Extras Fedora Extras] (versiuni mai vechi de Fedora 7). De asemenea în Internet pot fi găsite o mulţime de repozitorii neoficiale. Printre cele mai populare se numără: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] O listă mai completă o găsiti pe pagina proiectului [http://rpmfusion.org/FedoraThirdPartyRepos RPMFusion]. În aceste repozitorii veţi găsi multe pachete adiţionale care nu pot fi incluse în repozitorii standard, dar sînt compatibile cu acestea. Există motoare de căutare pe pachete ''RPM'' utilizate în sisteme RedHat/Fedora: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] ==== Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? ==== Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> ==== Cum de setat adresa serverului proxy utilizat? ==== În mediu ''GNOME'' din meniul "Sistem->Preferinţe->Internet şi reţea->Proxy reţea". Sau în caz general din consolă, adăugaţi în fişier profil shell <code>~/.bash_profile</code> rîndurile: <source lang="cfc"> http_proxy=http://proxy:3128 export http_proxy </source> sau <source lang="cfc"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> La următoarea întrare în sistem setările vor fi active. Atenţie: unele aplicaţii au metode proprii de a defini serverul proxy utilizat. De exemplu ''yum'' cere înregistrare tip <source lang="cfc"> proxy=http://proxy:3128 </source> în fişierul său de configuraţie. ==== Cum de lansat comanda cu anumite variabile împrejurării dezactivate (env)? ==== Pentru dezactivarea unei variabile, ex. http_proxy, executăm construcţia tip: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> unde <code>[CMD]</code> - este comanda necesară. ==== Cum poate fi instalat Gecko pentru wine ==== 1. Descărcăm versiune recentă wine_gecko.cab de pe [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net] în dosarul <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Dezarhivăm cu ajutorul cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Reîncărcăm wine: <source lang="bash"> $ wineboot -r </source> ==== Cum poate fi redenumită o grupă de volume LVM ==== Pentru redenumirea LVM Group sistemului activ ne încărcăm de pe alt sistem care nu va folosi acest grup, spre exemplu Fedora LiveCD sau Fedora Install în mod ''rescue''. În ultimul caz ignorăm propunera de a monta sistemele de fisiere existente. Executăm comenzile în consolă: 1. Rulăm consola lvm: <source lang="bash"> # lvm </source> 2. Verificăm vizibilitatea grupelor: <source lang="bash"> lvm> vgdisplay </source> 3. Dezactivăm grupele active: <source lang="bash"> lvm> vgchange -a n </source> 4. şi redenumim: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Activăm grupele: <source lang="bash"> lvm> vgchange -a y </source> 6. Părăsim consola lvm: <source lang="bash"> lvm> exit </source> '''''Atenţie:''' după redenumirea, este necesar de a corecta înregistrările afectate din /etc/fstab şi de a crea din nou initrd din dosarul /boot indicând parametrul --fstab='' <source lang="bash"> # mkinitrd --fstab='' /boot/initrd-2.6.25-1.fc9.x86_64.img 2.6.25-1.fc9.x86_64 </source> === Rezolvare probleme tip === ==== rpm se blochează la toate operaţiile de la utilizatorul root. Sub utilizatorul neprivilegiat lucrează corect ==== Posibilă cauză - eronarea bazei de date RPM. În consolă executăm <source lang="bash"> # rpm --rebuilddb </source> dacă nu va ajuta, încercăm: <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> ==== Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? ==== Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Итак. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> ==== Cum poate fi schimbat nume host propriu după instalarea sistemului? ==== Edităm fişierul /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> ==== Cum de accesat resurse reţea Samba (Windows shares)? ==== Dacă cunoaştem numele complet a resursei executăm comanda (cu drepturile utilizatorulu ''root''): <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Directorul /mnt/smb trebuie creat preventiv. Pentru demontare utilizăm <code>umount.cifs</code> Pentru accesare uşoară a resurselor reţelei locale fără autentificare putem utiliza ''fusesmb'': <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Deoarce ''fusesmb'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> ==== Cum de accesat un sistem de fişiere tip FAT32? ==== Executăm comanda: <source lang="bash"> # mount -t vfat /dev/sdaX /mnt/disk_fat -o quiet </source> Directorul ''/mnt/disk_fat'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> ==== Cum de accesat sistem de fişiere tip NTFS? ==== Pentru access citire/scriere utilizăm pachetul ''ntfs-3g''. Se instalează standard (în majoriatea cazurilor pachetul dat deja va fi instalat): <source lang="bash"> # yum install ntfs-3g </source> Executăm comanda: <source lang="bash"> # mount -t ntfs /dev/sdaX /mnt/disk_ntfs -o force </source> Directorul ''/mnt/disk_ntfs'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Versiunile vechi nu permiteau montarea autmată la pornire sistem cu protecţie SELinux în mod Enforce. Pentru trecerea în mod permisiv se poate utiliza comanda: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Deoarce ''ntfs-3g'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Există şi o alternativă mai uşoară - instalăm şi rulăm utilitarul ''ntfs-config'': <source lang="bash"> # yum install ntfs-config </source> ==== Cum de dezactivat suport IPv6? ==== Executăm următorii paşi (cu drepturile utilizatorului root). 1. Edităm fişierul /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Dezactivăm firewall ipv6: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Edităm /etc/hosts. Eliminăm înregistrările ce se încem cu <code>::1</code> 4. Restartăm. ==== При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? ==== Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> ==== Как восстановить KMenu по -умолчанию? ==== Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu ==== Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? ==== Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. ==== Cum să restabilesc parola utilizatorului root? ==== Parola criptată nu poate fi aflată, dar poate fi schimbată pe altă. Pentru aceasta ne trebuie mod Singleuser (init 1). Restartăm computer și în Grub (bootloader, încărcător inițial ce permite alegerea sistemului ce va fi încărcat) apăsăm tasta 'e' peste varianta de încărcare. Apare lista comenzilor. Trecem cu taste cursor pe rîndul ce pornește cu '''kernel''', și apasăm din nou 'e'. În mod de editare adăugăm la sfîrșitul rîndului '''1''' după un spațiu. Apăsăm Enter, apoi 'b'. Sistemul se va încărca în mod text de bază (init 1). Initial sistem de fișiere este montat numai pentru citire. Trecem în mod citire scriere cu comanda: <code>mount -o rw,remount /</code> Apoi utilizăm comanda standard: <code>passwd</code>. Restartăm: <code>sync;reboot</code> ==== Что делать если не запускаются графические приложения от пользователя root? ==== Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> ==== Schimbare set de caractere implicit serverului MySQL ==== Standard serverul MySQL utilizează set de caractere <code>latin1_swedish_ci</code>, ceea ce crează uneori probleme pentru scripturi imperfecte. Pentru soluţionare edităm fişierul /etc/my.cnf, rubrica <code>[mysqld]</code>: <source lang="cfc"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Software non-nativ === ==== Cum de lansat 1С:Бухгалтерия? ==== Pentru lucrul în mod multiutilizator este necesar de utilizat [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft] (non-free software). Fedora include pachetul wine care de asemenea poae lansa 1С:Бухгалтерия. Versiunile 8.0 şi 8.1 sînt compatibile cu Wine standard din distribuţie. Începînd cu versiunea 8.1 este disponibil clasterul nativ pe Linux cu support PostgreSQL. === Util === ==== Cum de redenumit set de fişiere dintr-o listă de nume în altă? ==== Exemplu: avem 20 fisiere video în director avi/, şi 20 fişiere cu subtitrări în directorul sub/. Atunci: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> ==== При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. ==== Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> ==== MPlayer (qemu) ругается на RTC, сбита синхронизация. ==== Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> ==== При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? ==== Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. ==== Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. ==== Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от IceCast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. ==== Cum de creat o imagine ISO9660 a unui DataCD sau DVD? ==== Utilizăm comanda standard '''dd'''. Sintaxa este simplă - indicăm fişiere de intrare şi ieşire ca parametrii {{{if=}}} (de intrare) şi {{{of=}}} (de ieşire). Exemplu creare imagine ISO CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Exemplu creare imagine DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Notă:''''' parametrul ''conv=noerror,sync'' este necesar la copierea unui mediu cu errori. '''dd''' nu se va opri la erori de citire, inserând date nule în locul sectorului eronat. ==== Cum de operat cu conţinutul imaginii ISO a unui CD/DVD? ==== Fişierul ISO9660 poate fi montat cu comanda. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> unde <code>dvd_cd.iso</code> - fişier ISO, <code>/media/iso</code> - directorul unde va fi accesat (trebuie creat preventiv). Există şi instrumente grafice: isomaster, AcetoneISO, şi de consolă: fuseiso, nrg2iso care permit operarea imaginilor ISO9660 utilizatorilor neprivelegiaţi. ==== Cum de ascuns Audacious în zona de notificare (tray)? ==== Activaţi pluginul general ''Status Icon''. Întră in componenţa standard versiunilor recente ''Audacious''. ==== Cum de copiat un disc AudioCD/VideoCD? ==== Comanda ''dd'' nu poate fi utilizată în asemenea cazuri. Trebuie utilizat pachetul cdrdao. 1. Cream fisier imagine <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> vor fi create 2 fişiere: data.bin şi file.toc 2. Înregistrăm disc copie din fişiere imagine <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> parametrul ''--speed'' indică viteza de înscriere. ==== Modul multiutilizator în screen ==== Este necesar dacă o sesiune să fie accesibilă pentru mai mulţi utilizatori în mod concurent. '''screen'' implicit activează în modul unui singur utilizator - numai utilizatorul care a activat sesiunea poate să se conecteze la dînsa. Pentru mod multiutilizator executăm paşii. În director acasă a utilizatorului ce va deţine sesiunea creăm fişierul <code>.screenrc</code> şi-l completăm: <pre> multiuser on addacl <user> </pre> unde <code><user></code> - utilizatorul, ce va avea access la această sesiune screen. Mai mulţi utilizatori pot fi adăugaţi separîndu-i numele prin virgulă. Activăm ''setuid'' bitul pe executabilul screen: <source lang="bash"> # chmod +s /usr/bin/screen </source> Lansăm sesiunea: <source lang="bash"> $ screen -dmS session01 </source> Acum utilizatorii enumeraţi în <code>.screenrc</code> se pot conecta prin comanda: <source lang="bash"> $ screen -x <screen_user>/session01 </source> unde <code><screen_user></code> - nume utilizator ce deţine sesiunea. ==== Cum de modificat adresa MAC pentru o interfaţă Ethrenet? ==== Pentru a atribui temporar interfeţei cu numele eth4 adresa 00:2E:13:A1:81:77 executăm una din comenzile: <source lang="bash"> # /sbin/ip link set dev eth4 address 00:2E:13:A1:81:77 # /sbin/ifconfig eth4 hw ether 00:2E:13:A1:81:77 </source> Pentru seta adresa automat la pornire sistem, în fişierul /etc/sysconfig/networking/devices/ifcfg-eth4 adaugăm rîndul: <source lang="bash"> MACADDR=00:2E:13:A1:81:77 </source> [[ru:FAQ]] d97c74c33cb67af5a534df886c0f98242ac2edff 355 354 2008-11-08T21:51:45Z VasileVsx 2 /* Что делать если не запускаются графические приложения от пользователя root? */ wikitext text/x-wiki {{Superuser}} === Primii paşi === ==== Cum poţi afla data/ora locală? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ date </source> ==== Cum poţ afla versiune kernel şi sistem de operare? ==== Pentru a afla versiune kernel, executaţi următoarea comandă în consolă: <source lang="bash"> $ uname -a </source> Detalii <code>man uname</code> Pentru a afla versiune sistem de operare, cunoaştem cîteva metode: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch <source> Sau dacă este instalat pachetul ''redhat-lsb'': <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> ==== Cît timp a lucrat SO (Sistem de operare)? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ uptime </source> ==== Cum poate fi setat Nautilus să deschidă directorul nou în aceeaşi fereastră? ==== Activaţi opţiunea ''System->Preferinţe->Administrare fişiere->Comportament->Deschide întotdeauna în fereastră de navigare'' ==== Cum de setat altă combinaţie taste de schimbare limbaj întroducere (En-Ro, En-Ru)? ==== Dacă utilizaţi KDE, dezactivaţi motorul control tastatură incorporat. Apoi edităm fişierul <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ro(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> şi restartăm server X. În acest caz avem modificare layout tastatură cu combinatia ''Ctrl-Shift'', şi două limbaje - engleză şi română compatibilă tastatură Microsoft. Altă variantă: română pentru programatori (diferă de layout ''us'' prin faptul că caracterele cu diacritice se introduc combinând tasta ALT dreaptă şi analogului latin al caracterului: exemplu AltGr-t pentru 'ţ', AltGr-s pentru 'ş', AltGr-q pentru 'â'), rusă, modificare - tasta WinKey dreată. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> ==== Cum de lansat o comandă sau aplicaţie sin consolă cu drepturile utilizatorului root (Superutilizator) ==== În consolă executaţi <source lang="bash"> $ su - </source> şi introduceţi parolă utilizator ''root''. Sau indicînd comandă imediat <source lang="bash"> $ su - -c 'command' </source> unde ''command'' - comanda sau aplicaţie. O alternativă ar fi setarea sistemului ''sudo'' <code>man sudo</code> se recomandă pentru documentare. Ca rezultat s-ar putea executa un set anumit, sau toate comenzile cu drepturile utilizatorului ''root'', introducind sau nu parola prefixînd comanda necesară cu ''sudo'', spre exemplu <source lang="bash"> $ sudo /sbin/fdisk -l </source> Exemplu de configurare ''sudo'' pentru utilizatorul ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> noile regului pentru utilizator vor fi active cu următoarea intrare sa în sistem (nu şi în cazul dacă utilizatorul posedă deja grupa ''wheel''). ==== Cum de activat masă de lucru stil 3D ? ==== Fedora Core 5 şi mai noi suporta efecte 3D pentru manager de ferestre prin intermediul tehnologii ''AIGLX''. Iniţial ne asigurăm că placa video/driverul utilizat [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 suportă AIGLX]. Pentru lansare ''compiz'' ca manager de ferestre activati opţiunea ''System->Preferinţe->Aspect->Desktop Effects->Enable Desktop Effects'' . De asemenea puteţi instala pachetul ''compiz-fusion'', care suportă setul extins de efecte. Doar instalaţi metapachetul ce corespunde mediului de lucru utilizat: <source lang="bash"> # yum install compiz-gnome ccsm </source> sau <source lang="bash"> # yum install compiz-kde ccsm </source> Apoi îl lansati din meniul ''Aplicaţii''. ==== Unde pot fi găsite programe (pachete) pentru Fedora? ==== O mulţime de programe pot fi găsite în repozitorii standard: Fedora Everything (versiuni mai noi de Fedora 7) şi [http://fedoraproject.org/wiki/Extras Fedora Extras] (versiuni mai vechi de Fedora 7). De asemenea în Internet pot fi găsite o mulţime de repozitorii neoficiale. Printre cele mai populare se numără: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] O listă mai completă o găsiti pe pagina proiectului [http://rpmfusion.org/FedoraThirdPartyRepos RPMFusion]. În aceste repozitorii veţi găsi multe pachete adiţionale care nu pot fi incluse în repozitorii standard, dar sînt compatibile cu acestea. Există motoare de căutare pe pachete ''RPM'' utilizate în sisteme RedHat/Fedora: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] ==== Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? ==== Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> ==== Cum de setat adresa serverului proxy utilizat? ==== În mediu ''GNOME'' din meniul "Sistem->Preferinţe->Internet şi reţea->Proxy reţea". Sau în caz general din consolă, adăugaţi în fişier profil shell <code>~/.bash_profile</code> rîndurile: <source lang="cfc"> http_proxy=http://proxy:3128 export http_proxy </source> sau <source lang="cfc"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> La următoarea întrare în sistem setările vor fi active. Atenţie: unele aplicaţii au metode proprii de a defini serverul proxy utilizat. De exemplu ''yum'' cere înregistrare tip <source lang="cfc"> proxy=http://proxy:3128 </source> în fişierul său de configuraţie. ==== Cum de lansat comanda cu anumite variabile împrejurării dezactivate (env)? ==== Pentru dezactivarea unei variabile, ex. http_proxy, executăm construcţia tip: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> unde <code>[CMD]</code> - este comanda necesară. ==== Cum poate fi instalat Gecko pentru wine ==== 1. Descărcăm versiune recentă wine_gecko.cab de pe [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net] în dosarul <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Dezarhivăm cu ajutorul cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Reîncărcăm wine: <source lang="bash"> $ wineboot -r </source> ==== Cum poate fi redenumită o grupă de volume LVM ==== Pentru redenumirea LVM Group sistemului activ ne încărcăm de pe alt sistem care nu va folosi acest grup, spre exemplu Fedora LiveCD sau Fedora Install în mod ''rescue''. În ultimul caz ignorăm propunera de a monta sistemele de fisiere existente. Executăm comenzile în consolă: 1. Rulăm consola lvm: <source lang="bash"> # lvm </source> 2. Verificăm vizibilitatea grupelor: <source lang="bash"> lvm> vgdisplay </source> 3. Dezactivăm grupele active: <source lang="bash"> lvm> vgchange -a n </source> 4. şi redenumim: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Activăm grupele: <source lang="bash"> lvm> vgchange -a y </source> 6. Părăsim consola lvm: <source lang="bash"> lvm> exit </source> '''''Atenţie:''' după redenumirea, este necesar de a corecta înregistrările afectate din /etc/fstab şi de a crea din nou initrd din dosarul /boot indicând parametrul --fstab='' <source lang="bash"> # mkinitrd --fstab='' /boot/initrd-2.6.25-1.fc9.x86_64.img 2.6.25-1.fc9.x86_64 </source> === Rezolvare probleme tip === ==== rpm se blochează la toate operaţiile de la utilizatorul root. Sub utilizatorul neprivilegiat lucrează corect ==== Posibilă cauză - eronarea bazei de date RPM. În consolă executăm <source lang="bash"> # rpm --rebuilddb </source> dacă nu va ajuta, încercăm: <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> ==== Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? ==== Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Итак. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> ==== Cum poate fi schimbat nume host propriu după instalarea sistemului? ==== Edităm fişierul /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> ==== Cum de accesat resurse reţea Samba (Windows shares)? ==== Dacă cunoaştem numele complet a resursei executăm comanda (cu drepturile utilizatorulu ''root''): <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Directorul /mnt/smb trebuie creat preventiv. Pentru demontare utilizăm <code>umount.cifs</code> Pentru accesare uşoară a resurselor reţelei locale fără autentificare putem utiliza ''fusesmb'': <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Deoarce ''fusesmb'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> ==== Cum de accesat un sistem de fişiere tip FAT32? ==== Executăm comanda: <source lang="bash"> # mount -t vfat /dev/sdaX /mnt/disk_fat -o quiet </source> Directorul ''/mnt/disk_fat'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> ==== Cum de accesat sistem de fişiere tip NTFS? ==== Pentru access citire/scriere utilizăm pachetul ''ntfs-3g''. Se instalează standard (în majoriatea cazurilor pachetul dat deja va fi instalat): <source lang="bash"> # yum install ntfs-3g </source> Executăm comanda: <source lang="bash"> # mount -t ntfs /dev/sdaX /mnt/disk_ntfs -o force </source> Directorul ''/mnt/disk_ntfs'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Versiunile vechi nu permiteau montarea autmată la pornire sistem cu protecţie SELinux în mod Enforce. Pentru trecerea în mod permisiv se poate utiliza comanda: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Deoarce ''ntfs-3g'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Există şi o alternativă mai uşoară - instalăm şi rulăm utilitarul ''ntfs-config'': <source lang="bash"> # yum install ntfs-config </source> ==== Cum de dezactivat suport IPv6? ==== Executăm următorii paşi (cu drepturile utilizatorului root). 1. Edităm fişierul /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Dezactivăm firewall ipv6: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Edităm /etc/hosts. Eliminăm înregistrările ce se încem cu <code>::1</code> 4. Restartăm. ==== При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? ==== Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> ==== Как восстановить KMenu по -умолчанию? ==== Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu ==== Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? ==== Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. ==== Cum să restabilesc parola utilizatorului root? ==== Parola criptată nu poate fi aflată, dar poate fi schimbată pe altă. Pentru aceasta ne trebuie mod Singleuser (init 1). Restartăm computer și în Grub (bootloader, încărcător inițial ce permite alegerea sistemului ce va fi încărcat) apăsăm tasta 'e' peste varianta de încărcare. Apare lista comenzilor. Trecem cu taste cursor pe rîndul ce pornește cu '''kernel''', și apasăm din nou 'e'. În mod de editare adăugăm la sfîrșitul rîndului '''1''' după un spațiu. Apăsăm Enter, apoi 'b'. Sistemul se va încărca în mod text de bază (init 1). Initial sistem de fișiere este montat numai pentru citire. Trecem în mod citire scriere cu comanda: <code>mount -o rw,remount /</code> Apoi utilizăm comanda standard: <code>passwd</code>. Restartăm: <code>sync;reboot</code> ==== Dacă aplicațiile grafice nu pot fi pornite cu drepturile utilizatorului root? ==== Dacă la lansare de la utilizator <code>root</code> observați în terminal ceva asemănător cu <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> Atunci adăugați utilizatorul root (sau alt utilizator dacă este necesitate) în lista utilizatorilor cu drept de conectare la X11 server: <source lang="bash"> $ xhost si:localuser:root </source> ==== Schimbare set de caractere implicit serverului MySQL ==== Standard serverul MySQL utilizează set de caractere <code>latin1_swedish_ci</code>, ceea ce crează uneori probleme pentru scripturi imperfecte. Pentru soluţionare edităm fişierul /etc/my.cnf, rubrica <code>[mysqld]</code>: <source lang="cfc"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Software non-nativ === ==== Cum de lansat 1С:Бухгалтерия? ==== Pentru lucrul în mod multiutilizator este necesar de utilizat [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft] (non-free software). Fedora include pachetul wine care de asemenea poae lansa 1С:Бухгалтерия. Versiunile 8.0 şi 8.1 sînt compatibile cu Wine standard din distribuţie. Începînd cu versiunea 8.1 este disponibil clasterul nativ pe Linux cu support PostgreSQL. === Util === ==== Cum de redenumit set de fişiere dintr-o listă de nume în altă? ==== Exemplu: avem 20 fisiere video în director avi/, şi 20 fişiere cu subtitrări în directorul sub/. Atunci: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> ==== При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. ==== Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> ==== MPlayer (qemu) ругается на RTC, сбита синхронизация. ==== Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> ==== При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? ==== Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. ==== Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. ==== Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от IceCast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. ==== Cum de creat o imagine ISO9660 a unui DataCD sau DVD? ==== Utilizăm comanda standard '''dd'''. Sintaxa este simplă - indicăm fişiere de intrare şi ieşire ca parametrii {{{if=}}} (de intrare) şi {{{of=}}} (de ieşire). Exemplu creare imagine ISO CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Exemplu creare imagine DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Notă:''''' parametrul ''conv=noerror,sync'' este necesar la copierea unui mediu cu errori. '''dd''' nu se va opri la erori de citire, inserând date nule în locul sectorului eronat. ==== Cum de operat cu conţinutul imaginii ISO a unui CD/DVD? ==== Fişierul ISO9660 poate fi montat cu comanda. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> unde <code>dvd_cd.iso</code> - fişier ISO, <code>/media/iso</code> - directorul unde va fi accesat (trebuie creat preventiv). Există şi instrumente grafice: isomaster, AcetoneISO, şi de consolă: fuseiso, nrg2iso care permit operarea imaginilor ISO9660 utilizatorilor neprivelegiaţi. ==== Cum de ascuns Audacious în zona de notificare (tray)? ==== Activaţi pluginul general ''Status Icon''. Întră in componenţa standard versiunilor recente ''Audacious''. ==== Cum de copiat un disc AudioCD/VideoCD? ==== Comanda ''dd'' nu poate fi utilizată în asemenea cazuri. Trebuie utilizat pachetul cdrdao. 1. Cream fisier imagine <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> vor fi create 2 fişiere: data.bin şi file.toc 2. Înregistrăm disc copie din fişiere imagine <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> parametrul ''--speed'' indică viteza de înscriere. ==== Modul multiutilizator în screen ==== Este necesar dacă o sesiune să fie accesibilă pentru mai mulţi utilizatori în mod concurent. '''screen'' implicit activează în modul unui singur utilizator - numai utilizatorul care a activat sesiunea poate să se conecteze la dînsa. Pentru mod multiutilizator executăm paşii. În director acasă a utilizatorului ce va deţine sesiunea creăm fişierul <code>.screenrc</code> şi-l completăm: <pre> multiuser on addacl <user> </pre> unde <code><user></code> - utilizatorul, ce va avea access la această sesiune screen. Mai mulţi utilizatori pot fi adăugaţi separîndu-i numele prin virgulă. Activăm ''setuid'' bitul pe executabilul screen: <source lang="bash"> # chmod +s /usr/bin/screen </source> Lansăm sesiunea: <source lang="bash"> $ screen -dmS session01 </source> Acum utilizatorii enumeraţi în <code>.screenrc</code> se pot conecta prin comanda: <source lang="bash"> $ screen -x <screen_user>/session01 </source> unde <code><screen_user></code> - nume utilizator ce deţine sesiunea. ==== Cum de modificat adresa MAC pentru o interfaţă Ethrenet? ==== Pentru a atribui temporar interfeţei cu numele eth4 adresa 00:2E:13:A1:81:77 executăm una din comenzile: <source lang="bash"> # /sbin/ip link set dev eth4 address 00:2E:13:A1:81:77 # /sbin/ifconfig eth4 hw ether 00:2E:13:A1:81:77 </source> Pentru seta adresa automat la pornire sistem, în fişierul /etc/sysconfig/networking/devices/ifcfg-eth4 adaugăm rîndul: <source lang="bash"> MACADDR=00:2E:13:A1:81:77 </source> [[ru:FAQ]] 692c9266246fdda743031c56112ce19a35b1757f Заглавная страница 0 17 356 263 2008-11-11T15:26:04Z 81.180.65.2 0 /* FedoraMD.org Wiki */ wikitext text/x-wiki == FedoraMD Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статьи|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[:Category:Установка и настройка|Установка и настройка]] * [[:Category:Программное обеспечение|Программное обеспечение]] * [[FAQ]] * [[:Category:Статьи|Статьи]] * [[:Category:Репозитории|Репозитории]] [[ro:Pagina_principală]] 91cbd2759c7c82008829e02140b853ed5841a4b1 FreeDOS на USB Flash 0 147 357 2008-11-12T13:23:09Z OlegA 1 Новая: Однажды мне попался ноутбук типа ASUS EeePC без привода. Естественно, необходимо было переустановить на н... wikitext text/x-wiki Однажды мне попался ноутбук типа ASUS EeePC без привода. Естественно, необходимо было переустановить на ней систему. В итоге понадобился [http://www.freedos.org/ FreeDOS]. Флопика не было, но была флеха под рукой. Как оказалось, сделать загрузочную флеху с [http://www.freedos.org/ FreeDOS] не сложно. Теперь все по порядку. == Что понадобится == 1. [http://syslinux.zytor.com/ syslinux] , устанавливается просто: <source lang="bash"># yum install syslinux</source> 2. Образ FreeDOS. Его можно слепить самому, но в интернете есть уже [http://odin.fdos.org/ готовый]. == Установка == 1. Необходимо сделать раздел на флехе активным, делается это или в <code>fdisk</code> или в <code>pared</code>. Не буду рассказывать как это делается, т.к. это отдельная тема для разговора. 2. Выполняем команду, где <code>/dev/sdb1</code> наша флеха. Кстати, не забываем ее размонтировать перед операциями. <source lang="bash"> # syslinux /dev/sdb1 </source> 3. Копируем MBR <source lang="bash"> # cat /usr/lib/syslinux/mbr.bin > /dev/sdb </source> 4. Теперь необходимо скопировать драйвер для загрузки образа memdisk, но прежде необходимо смонтировать флеху: <source lang="bash"> # cp /usr/lib/syslinux/memdisk /media/disk/ </source> 5. Копируем образ FreeDOS на флеху. 6. На флехе создаем файл <code>syslinux.cfg</code> и редактируем его: <source lang="cfc"> default freedos prompt 0 label freedos kernel memdisk append initrd=odin1200.img </source> <code>odin1200.img</code> - файл нашего образа. 7. Размонтируем и пользуемся на здоровье. [[Category:Статьи]] abbf0d65957b48003711ef3fa434fc7a50847a92 359 357 2008-11-12T19:49:07Z VasileVsx 2 /* Установка */ wikitext text/x-wiki Однажды мне попался ноутбук типа ASUS EeePC без привода. Естественно, необходимо было переустановить на ней систему. В итоге понадобился [http://www.freedos.org/ FreeDOS]. Флопика не было, но была флеха под рукой. Как оказалось, сделать загрузочную флеху с [http://www.freedos.org/ FreeDOS] не сложно. Теперь все по порядку. == Что понадобится == 1. [http://syslinux.zytor.com/ syslinux] , устанавливается просто: <source lang="bash"># yum install syslinux</source> 2. Образ FreeDOS. Его можно слепить самому, но в интернете есть уже [http://odin.fdos.org/ готовый]. == Установка == 1. Необходимо сделать раздел на флехе активным, делается это или в <code>fdisk</code> или в <code>parted</code> (для новичков подойдет графическая надстройка над parted - ''gparted'' ). Не буду рассказывать как это делается, т.к. это отдельная тема для разговора. 2. Выполняем команду, где <code>/dev/sdb1</code> наша флешка. Кстати, не забываем ее размонтировать перед операциями. <source lang="bash"> # syslinux /dev/sdb1 </source> 3. Копируем MBR <source lang="bash"> # cat /usr/lib/syslinux/mbr.bin > /dev/sdb </source> 4. Теперь необходимо скопировать драйвер для загрузки образа memdisk, но прежде необходимо смонтировать флешку: <source lang="bash"> # cp /usr/lib/syslinux/memdisk /media/disk/ </source> 5. Копируем образ FreeDOS на флешку. 6. На флехе создаем файл <code>syslinux.cfg</code> и редактируем его: <source lang="cfc"> default freedos prompt 0 label freedos kernel memdisk append initrd=odin1200.img </source> <code>odin1200.img</code> - файл нашего образа. 7. Размонтируем и пользуемся на здоровье. [[Category:Статьи]] f4ab9e80278bb14ceb6ca6d090f1ac9437af066d 362 359 2008-11-13T08:00:57Z OlegA 1 wikitext text/x-wiki Однажды мне попался ноутбук типа [http://eeepc.asus.com/ ASUS Eee PC] без привода. Естественно, необходимо было переустановить на ней систему. В итоге понадобился [http://www.freedos.org/ FreeDOS]. Флопика не было, но была флеха под рукой. Как оказалось, сделать загрузочную флеху с [http://www.freedos.org/ FreeDOS] не сложно. Теперь все по порядку. == Что понадобится == 1. [http://syslinux.zytor.com/ syslinux] , устанавливается просто: <source lang="bash"># yum install syslinux</source> 2. Образ FreeDOS. Его можно слепить самому, но в интернете есть уже [http://odin.fdos.org/ готовый]. == Установка == 1. Необходимо сделать раздел на флехе активным, делается это или в <code>fdisk</code> или в <code>parted</code> (для новичков подойдет графическая надстройка над parted - ''gparted'' ). Не буду рассказывать как это делается, т.к. это отдельная тема для разговора. 2. Выполняем команду, где <code>/dev/sdb1</code> наша флешка. Кстати, не забываем ее размонтировать перед операциями. <source lang="bash"> # syslinux /dev/sdb1 </source> 3. Копируем MBR <source lang="bash"> # cat /usr/lib/syslinux/mbr.bin > /dev/sdb </source> 4. Теперь необходимо скопировать драйвер для загрузки образа memdisk, но прежде необходимо смонтировать флешку: <source lang="bash"> # cp /usr/lib/syslinux/memdisk /media/disk/ </source> 5. Копируем образ FreeDOS на флешку. 6. На флехе создаем файл <code>syslinux.cfg</code> и редактируем его: <source lang="cfc"> default freedos prompt 0 label freedos kernel memdisk append initrd=odin1200.img </source> <code>odin1200.img</code> - файл нашего образа. 7. Размонтируем и пользуемся на здоровье. [[Category:Статьи]] 32386dc93e4d8dc0621f836705abad02068c722a Обсуждение:FreeDOS на USB Flash 1 148 358 2008-11-12T19:46:38Z VasileVsx 2 Pagină nouă: Я, для установки FreeDOS на флэшку (а точнее на USB HDD), использовал KVM (можно qemu). <code>qemu -cdrom fdos.iso -hda /dev/sdb -boot ... wikitext text/x-wiki Я, для установки FreeDOS на флэшку (а точнее на USB HDD), использовал KVM (можно qemu). <code>qemu -cdrom fdos.iso -hda /dev/sdb -boot d</code> 3d99bdbe0ce59a7ad81750a1a89d85f5b08c47cc 360 358 2008-11-13T07:15:12Z OlegA 1 /* Исправления */ Новая тема wikitext text/x-wiki Я, для установки FreeDOS на флэшку (а точнее на USB HDD), использовал KVM (можно qemu). <code>qemu -cdrom fdos.iso -hda /dev/sdb -boot d</code> == Исправления == Верните мою "флеху"! ;-) 6969ff13328bf9d931660c716c8c65987b8eabaf 361 360 2008-11-13T07:16:46Z OlegA 1 /* Исправления */ wikitext text/x-wiki Я, для установки FreeDOS на флэшку (а точнее на USB HDD), использовал KVM (можно qemu). <code>qemu -cdrom fdos.iso -hda /dev/sdb -boot d</code> == Исправления == Верните мою "флеху"! ;-) И как дальше в qemu? Думаю, что будет интересно написать статейку по этому поводу. 547ddb908a68b4f6f86715bca3448829f2172243 VMware FAQ 0 100 363 228 2008-11-18T09:00:30Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Скачал rpm пакет, установил, а VMware Workstation не запускаеться, почему? == Для корректной конфигурации необходмо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте от root комманду: <source lang="bash"> #/usr/bin/vmware-config.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == vmware-config.pl завершается с ошибками, компилятор и исходники ядра установлены == Это случается если используется более новое ядро неподдерживаемое VMware Workstation. Следует обновить конфигуратор и модули ядра. Обновление, архив с именем ''vmware-any-any-updateXXX.tar.gz'' (где вместо XXX версия обновления), можно найти [http://knihovny.cvut.cz/ftp/pub/vmware/ здесь] или в приложениях к данной странице. Скачиваем архив во временный каталог <code>/tmp</code>). Для корректной конфигурации необходимо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте команды: <source lang="bash"> $ cd /tmp $ tar xf vmware-any-any-update*.tar* $ cd vmware-any-any-update*[0-9][0-9] # ./runme.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == Не могу печатать напрямую через порт LPT. Почему? == Это происходит из-за того: 1. у Вас нет прав на устройство /dev/parport* 2. драйвер ядра использует данное устройство. Для решения данной проблемы рекомендую создать два shell-файла... предположим один - print_start.sh, другой print_stop.sh <source lang="bash"> #!/bin/sh # print_start.sh # Start print driver (after VMware) su -c 'chmod 777 /dev/parport0 \ /sbin/modprobe lp' </source> <source lang="bash"> #!/bin/sh # print_stop.sh # Stop print driver (before VMware) su -c '/sbin/rmmod lp' </source> Перед запуском VMware Workstation выполняем print_stop.sh, после окончания работы запускаем print_start.sh. Не забудьте в конфигурации указать LPT порт и устройство на которое надо перенаправлять запросы. == Почему скорость передачи данных по сети такая низкая? == Как показа практика, все типы подключения медленные, корме hostonly. Рекомендуется использовать именно этот тип, если скорость критична. Не забывайте, что с помощью [[Настройка NATa]] Вы сможете настроить NAT. Кстати, hostonly + iptables (NAT) работают быстрее, чем использовать в VMware тип подключения NAT. == Начиная с ядра 2.6.24 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 116 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update-116.tgz vmware-any-any-update-116.tgz] == Начиная с ядра 2.6.25 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 117 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update117b.tgz vmware-any-any-update117b.tgz] При запуске runme.pl отвечать '''[no]''' на вопросы о перезаписи. == Начиная с ядра 2.6.27 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч [http://www.insecure.ws/warehouse/vmware-update-2.6.27-5.5.7-2.tar.gz vmware-update-2.6.27-5.5.7-2.tar.gz]. [[Category:Программное обеспечение]] [[Category:VMware]] b4d28899abcf79b8f31f8b5f91c7e67f34e0aa03 364 363 2008-11-18T11:19:32Z OlegA 1 Отмена правки 363 участника [[Special:Contributions/OlegA|OlegA]] ([[User talk:OlegA|обсуждение]]) wikitext text/x-wiki {{Суперпользователь}} == Скачал rpm пакет, установил, а VMware Workstation не запускаеться, почему? == Для корректной конфигурации необходмо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте от root комманду: <source lang="bash"> #/usr/bin/vmware-config.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == vmware-config.pl завершается с ошибками, компилятор и исходники ядра установлены == Это случается если используется более новое ядро неподдерживаемое VMware Workstation. Следует обновить конфигуратор и модули ядра. Обновление, архив с именем ''vmware-any-any-updateXXX.tar.gz'' (где вместо XXX версия обновления), можно найти [http://knihovny.cvut.cz/ftp/pub/vmware/ здесь] или в приложениях к данной странице. Скачиваем архив во временный каталог <code>/tmp</code>). Для корректной конфигурации необходимо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте команды: <source lang="bash"> $ cd /tmp $ tar xf vmware-any-any-update*.tar* $ cd vmware-any-any-update*[0-9][0-9] # ./runme.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == Не могу печатать напрямую через порт LPT. Почему? == Это происходит из-за того: 1. у Вас нет прав на устройство /dev/parport* 2. драйвер ядра использует данное устройство. Для решения данной проблемы рекомендую создать два shell-файла... предположим один - print_start.sh, другой print_stop.sh <source lang="bash"> #!/bin/sh # print_start.sh # Start print driver (after VMware) su -c 'chmod 777 /dev/parport0 \ /sbin/modprobe lp' </source> <source lang="bash"> #!/bin/sh # print_stop.sh # Stop print driver (before VMware) su -c '/sbin/rmmod lp' </source> Перед запуском VMware Workstation выполняем print_stop.sh, после окончания работы запускаем print_start.sh. Не забудьте в конфигурации указать LPT порт и устройство на которое надо перенаправлять запросы. == Почему скорость передачи данных по сети такая низкая? == Как показа практика, все типы подключения медленные, корме hostonly. Рекомендуется использовать именно этот тип, если скорость критична. Не забывайте, что с помощью [[Настройка NATa]] Вы сможете настроить NAT. Кстати, hostonly + iptables (NAT) работают быстрее, чем использовать в VMware тип подключения NAT. == Начиная с ядра 2.6.24 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 116 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update-116.tgz vmware-any-any-update-116.tgz] == Начиная с ядра 2.6.25 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 117 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update117b.tgz vmware-any-any-update117b.tgz] При запуске runme.pl отвечать '''[no]''' на вопросы о перезаписи. [[Category:Программное обеспечение]] [[Category:VMware]] cf455d7d572a4e24910b4820f6387ec45d8ca406 Участник:Павел Толстов 2 150 372 2008-12-19T21:49:40Z Павел Толстов 22 Новая: [[Участник:Павел Толстов]] Личные данные: '''Город:''' [[Москва]] '''Образование:''' ВМиК МГУ '''Область инт... wikitext text/x-wiki [[Участник:Павел Толстов]] Личные данные: '''Город:''' [[Москва]] '''Образование:''' ВМиК МГУ '''Область интересов:''' Программирование, кибернетика, компьютеры. '''Место работы:''' ООО «Лабитек», программист. '''Интересы:''' Область интересов распространяется на изучение кибернетических систем, программирование на низком уровне, ну и конечно же компьютерную технику :) '''О себе:''' Люблю кампы, питаю слабость к рарному, редкому железу. Уважаю Linux за неубиваемость. Верю в 4-х часовой рабочий день и полную кибернетизацию всех сфер применения физического труда. '''E-mail:''' ptolstov@yandex.ru '''ICQ:''' 340733512 ---- '''Сайты по интересам:''' [http://www.hp6710.ru Сайт ноутбук hp6710] [http://www.hp6715.ru Сайт ноутбук hp6715] [http://www.hp6820.ru Сайт ноутбук hp6820] [http://www.hp7300.ru Сайт ноутбук hp7300] [http://www.hp8510.ru Сайт ноутбук hp8510] bf13648677131c542a89c38e1adfdd3fc6862964 373 372 2008-12-20T11:29:34Z VasileVsx 2 Удалены ссылки на внешние ресурсы (похожие попытку на расскрутки/SEO) wikitext text/x-wiki [[Участник:Павел Толстов]] Личные данные: '''Город:''' [[Москва]] '''Образование:''' ВМиК МГУ '''Область интересов:''' Программирование, кибернетика, компьютеры. '''Место работы:''' ООО «Лабитек», программист. '''Интересы:''' Область интересов распространяется на изучение кибернетических систем, программирование на низком уровне, ну и конечно же компьютерную технику :) '''О себе:''' Люблю кампы, питаю слабость к рарному, редкому железу. Уважаю Linux за неубиваемость. Верю в 4-х часовой рабочий день и полную кибернетизацию всех сфер применения физического труда. '''E-mail:''' ptolstov@yandex.ru '''ICQ:''' 340733512 ---- '''Сайты по интересам:''' 5fd7998dd3922b54a091005ae989f2ad4a6e767b Pagina principală 0 3 374 292 2008-12-26T10:38:04Z VasileVsx 2 remove .org from project name wikitext text/x-wiki == FedoraMD Wiki == '''Bine aţi venit în lume Fedora Linux.''' Aici puteţi găsi întrebări fracvente şi soluţii, exemple de setări şi sfaturi aplicabile nu doar la [[Fedora Linux/ro|Fedora Linux]], dar şi la alte distribuţii Linux. De asemenea avem [[:Category:Articole|articole]], care vă vor ajuta să descoperiţi diversa lume a sistemelor Linux. Site-ul este bazat pe tehnologia [[wikipedia:ro:Wiki|Wiki]]. După înregistrare veţi putea schimba parametrii utilizator, a edita şi crea pagini. Funcţie utilă - [[Special:Search|căutare]]. Căutare se execută peste tot conţinutul site-ului. == Secţii == * [[:Category:Instalare şi configurare|Instalare şi configurare]] * [[Programe]] * [[FAQ/ro|FAQ]] * [[:Category:Articole|Articole]] * [[:Category:Repozitorii|Repozitorii]] [[ru:Заглавная_страница]] 16d82208293f89404201b13ef14bd5b681e94996 Repozitori:CentOS 0 133 375 297 2008-12-26T10:39:21Z VasileVsx 2 remove .org from project name wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''CentOS'' 4.x, 5.x (inclusiv ''os, extras, centosplus, csgfs, fasttrack, updates'') pentru architecturile i386 şi x86_64 * ''EPEL'' pentru CentOS/RHEL 4.x, 5.x (architecturile i386 şi x86_64) Pentru a seta YUM la ''EPEL'', instalaţi pachetul ''epel-release''. Pentru CentOS/RHEL 5.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/5/i386/epel-release-5-3.noarch.rpm </source> Pentru CentOS/RHEL 4.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/4/i386/epel-release-4-6.noarch.rpm </source> {{Information|Repozitoriile CentOS standard plasate pe oglinda noastră vă sînt accesibile în mod automat cu condiţia utilizării yum plugin ''yum-fastestmirror''.}} {{Information|De asemenea puteţi seta explicit parametru ''failovermethod<nowiki>=</nowiki>priority'' pentru toate repozitoriile CentOS (din directorul ''/etc/yum.repos.d/'') pentru a prioritiza accesul la serverul nostru.}} [[Category:Repozitorii|CentOS]] [[ru:Репозиторий:CentOS]] 3f396e8a0c885468fefcefaa770fe66f1f3dec90 Repozitori:Cygwin 0 134 376 277 2008-12-26T10:40:05Z VasileVsx 2 remove .org from project name wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinda repozitoriului [http://cygwin.com/ Cygwin]: Pentru a accesa acest repo, descărcaţi [http://www.fedoramd.org/misc/cygwin/setup.exe setup.exe], rulaţi, şi în lista oglinzilor adăugaţi URL: http://repo.fedoramd.org/mirrors/cygwin/ . {{Information|'''Atenţie''': comenzile precedate de caracterul '#' trebuie executate cu drepturile utilizatorului root. Deschideţi emulator terminal (sau aflîndu-se în consolă) cu drepturi utilizatorului regular, introduceţi comanda <source lang="bash"> $ su - </source> }} spre a ridica nivelul de privilegii. Caracterele '$' şi '#' din începutul rîndului nu fac parte din comanda şi nu trebuie introduse. Alte comenzi pot fi executate cu drepturlie utilizatorului regular. [[Category:Repozitorii|Cygwin]] [[ru:репозиторий:Cygwin]] 28866b139c3f5a5c803527f6ab10354f3c63f92a Repozitori:Fedora 10 0 132 377 275 2008-12-26T10:42:40Z VasileVsx 2 remove .org from project name; update to F10 wikitext text/x-wiki {{Superuser}} FedoraMD.org prestează access la oglinzile următorelor repozitorii: * ''Fedora 10 (Everything)'', ''Fedora 10 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 10 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-10'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-10.rpm </source> Deoarece oglinda noastră dublează repozitorii standard, pentru lucru mai efectiv a YUM acestea pot fi dezactivate: <source lang="bash"> # sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/livna.repo </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat cu condiţia utilizării yum plugin ''yum-fastestmirror''.}} [[Category:Repozitorii|Fedora 10]] [[ru:Репозиторий:Fedora 10]] 9519d4ea820dfd4aa7f57305ed042a1348d4ec11 Repozitori:Fedora 10 0 132 378 377 2008-12-26T10:43:09Z VasileVsx 2 a mutat [[Repozitori:Fedora 7]] la [[Repozitori:Fedora 10]]: revocare F7, iesire F10 wikitext text/x-wiki {{Superuser}} FedoraMD.org prestează access la oglinzile următorelor repozitorii: * ''Fedora 10 (Everything)'', ''Fedora 10 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 10 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-10'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-10.rpm </source> Deoarece oglinda noastră dublează repozitorii standard, pentru lucru mai efectiv a YUM acestea pot fi dezactivate: <source lang="bash"> # sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/livna.repo </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat cu condiţia utilizării yum plugin ''yum-fastestmirror''.}} [[Category:Repozitorii|Fedora 10]] [[ru:Репозиторий:Fedora 10]] 9519d4ea820dfd4aa7f57305ed042a1348d4ec11 380 378 2008-12-26T10:43:27Z VasileVsx 2 remove .org from project name wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 10 (Everything)'', ''Fedora 10 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 10 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-10'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-10.rpm </source> Deoarece oglinda noastră dublează repozitorii standard, pentru lucru mai efectiv a YUM acestea pot fi dezactivate: <source lang="bash"> # sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/livna.repo </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat cu condiţia utilizării yum plugin ''yum-fastestmirror''.}} [[Category:Repozitorii|Fedora 10]] [[ru:Репозиторий:Fedora 10]] b989adcb33701a94110056ba98ffc539a5eb9b19 384 380 2008-12-26T10:53:42Z VasileVsx 2 fix noteinfo wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 10 (Everything)'', ''Fedora 10 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 10 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-10'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-10.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat [[Category:Repozitorii|Fedora 10]] [[ru:Репозиторий:Fedora 10]] dece34d1b98e4e1de6cca4b8a2559b8168e2e8ce 385 384 2008-12-26T10:54:02Z VasileVsx 2 wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 10 (Everything)'', ''Fedora 10 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 10 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-10'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-10.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat}} [[Category:Repozitorii|Fedora 10]] [[ru:Репозиторий:Fedora 10]] d603664770081b4d5b0edd9f0fcb63d0e33107b0 420 385 2009-06-08T16:36:50Z VasileVsx 2 wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 10 (Everything)'', ''Fedora 10 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''RussianFedora'' pentru Fedora 10 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 10 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-10'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-10.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat}} [[Category:Repozitorii|Fedora 10]] [[ru:Репозиторий:Fedora 10]] fb52d51df42ccfff2df9d613e9a073919ee64d9b Repozitori:Fedora 7 0 151 379 2008-12-26T10:43:09Z VasileVsx 2 a mutat [[Repozitori:Fedora 7]] la [[Repozitori:Fedora 10]]: revocare F7, iesire F10 wikitext text/x-wiki #REDIRECT [[Repozitori:Fedora 10]] 1447ddb05bb0f9770fb8061f4a088e4d82514118 Repozitori:Fedora 8 0 131 381 274 2008-12-26T10:43:57Z VasileVsx 2 remove .org from project name wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 8 (Everything)'', ''Fedora 8 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 8 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-8'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-8.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [[Category:Repozitorii|Fedora 8]] [[ru:Репозиторий:Fedora 8]] 9227479a6d78cc43c05660276c0abfb6e2384ca8 382 381 2008-12-26T10:44:34Z VasileVsx 2 added RPMFusion wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 8 (Everything)'', ''Fedora 8 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 8 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 8 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-8'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-8.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [[Category:Repozitorii|Fedora 8]] [[ru:Репозиторий:Fedora 8]] e45a6c6e102b4bd220beb022cd91dd2b5ebe68f9 Repozitori:Fedora 9 0 130 383 273 2008-12-26T10:45:29Z VasileVsx 2 remove .org from project name; add RPMFusion wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 9 (Everything)'', ''Fedora 9 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 9 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 9 (architecturile i386 şi x86_64) * ''Professor Kriehn's Repository'' pentru Fedora 9 (architecturile i386 şi x86_64) * ''Tigro'' pentru Fedora 9 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 9 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-9'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-9.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [[Category:Repozitorii|Fedora 9]] [[ru:Репозиторий:Fedora 9]] 6dedb43bd9a7bf6dc81d2a143c23b7758e343a47 Репозиторий:CentOS 0 127 386 278 2008-12-26T13:31:09Z VasileVsx 2 remove .org from project name wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''CentOS'' 4.x, 5.x (включая ''os, extras, centosplus, csgfs, fasttrack, updates'') для i386 и x86_64 архитектур * ''EPEL'' для CentOS 4.x, 5.x (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с EPEL установите пакет ''epel-release''. Для CentOS/RHEL 5.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/5/i386/epel-release-5-3.noarch.rpm </source> Для CentOS/RHEL 4.x: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/epel/4/i386/epel-release-4-6.noarch.rpm </source> {{Information|Базовые репозитории CentOS нашего зеркала вам доступны без дополнительных настроек при условии использования yum плагина ''yum-fastestmirror''.}} {{Information|Также вы можете явно указать параметр ''failovermethod<nowiki>=</nowiki>priority'' для всех репозиториев CentOS (из каталога ''/etc/yum.repos.d/'') чтобы повысить приоритет нашего сервера.}} [[Category:Репозитории|CentOS]] [[ro:Repozitori:CentOS]] cb472049b82963a63983bef62a9b5cac330aea7a Репозиторий:Cygwin 0 128 387 279 2008-12-26T13:31:45Z VasileVsx 2 remove .org from project name wikitext text/x-wiki FedoraMD предоставляет доступ к зеркалу [http://cygwin.com/ Cygwin] репозитория: Чтобы воспользоваться нашим репо, скачайте [http://www.fedoramd.org/misc/cygwin/setup.exe setup.exe], запустите, и в списке зеркал добавьте URL: http://repo.fedoramd.org/mirrors/cygwin/ . {{Information|'''Внимание:''' команды предваряемые символом '#' должны выполняться с правами root. Открыв терминал (или находясь в консоли) с правами обычного пользователя, введите команду: <source lang="bash"> $ su - </source> }} для повышения уровня привелегий. Символы '$' и '#' в начале строки не являются частью команды и не должны вводится. Прочие команды могут выполняться с правами обыкновенного пользователя. [[Category:Репозитории|Cygwin]] [[ro:Repozitori:Cygwin]] 2ef0fdd7ea87abd331331024b0f27a42f1603491 Репозиторий:Fedora 8 0 125 388 281 2008-12-26T13:32:17Z VasileVsx 2 remove .org from project name; add RPMFusion wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 8 (Everything)'', ''Fedora 8 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 8 (i386 и x86_64 архитектуры) * ''RPMFusion'' для Fedora 8 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 8 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 8 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 8 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с дополнительными репозиториями установите пакет ''fedoramd-release-8'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-8.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 8]] [[ro:Repozitori:Fedora 8]] df48b1e38c19ecc431b50bc37440543a497f1381 Репозиторий:Fedora 9 0 124 389 282 2008-12-26T13:32:48Z VasileVsx 2 remove .org from project name; add RPMFusion wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 9 (Everything)'', ''Fedora 9 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 9 (i386 и x86_64 архитектуры) * ''RPMFusion'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 9 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 9 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с дополнительными репозиториями установите пакет ''fedoramd-release-9'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-9.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 9]] [[ro:Repozitori:Fedora 9]] 321d6cbeeb515ae7aaa1fd7b10ab6de04bcce771 Репозиторий:Fedora 10 0 126 390 280 2008-12-26T13:34:23Z VasileVsx 2 remove .org from project name; add RPMFusion; update to F10 wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 10 (Everything)'', ''Fedora 10 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 10 (i386 и x86_64 архитектуры) * ''RPMFusion'' для Fedora 10 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 10 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 10 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 10 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с нашим сайтом установите пакет ''fedoramd-release-10'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-10.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 10]] [[ro:Repozitori:Fedora 10]] eae1c5a99ba212b3acfd3b248f2276f8fc7baf63 391 390 2008-12-26T13:35:12Z VasileVsx 2 a mutat [[Репозиторий:Fedora 7]] la [[Репозиторий:Fedora 10]]: F7 EOL, F10 announce wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 10 (Everything)'', ''Fedora 10 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 10 (i386 и x86_64 архитектуры) * ''RPMFusion'' для Fedora 10 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 10 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 10 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 10 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с нашим сайтом установите пакет ''fedoramd-release-10'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-10.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 10]] [[ro:Repozitori:Fedora 10]] eae1c5a99ba212b3acfd3b248f2276f8fc7baf63 421 391 2009-06-08T16:37:48Z VasileVsx 2 Tigro->RussianFedora wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 10 (Everything)'', ''Fedora 10 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 10 (i386 и x86_64 архитектуры) * ''RPMFusion'' для Fedora 10 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 10 (i386 и x86_64 архитектуры) * ''RussianFedora'' для Fedora 10 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 10 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с нашим сайтом установите пакет ''fedoramd-release-10'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-10.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 10]] [[ro:Repozitori:Fedora 10]] fc77f0ed24e5be687d14058ed6b8582f2808797b Репозиторий:Fedora 7 0 152 392 2008-12-26T13:35:12Z VasileVsx 2 a mutat [[Репозиторий:Fedora 7]] la [[Репозиторий:Fedora 10]]: F7 EOL, F10 announce wikitext text/x-wiki #REDIRECT [[Репозиторий:Fedora 10]] 56a62e47365e6a4bb54f2aa2cce1eb2408afeb63 FAQ 0 110 393 365 2008-12-27T21:30:06Z 212.56.199.220 0 /* Есть ли возможность запуска 1С:Бухгалтерии? */ wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> или просто выполняем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Финализировать сессии на оптическом носителе === Если нужно финализировать диск с мультисесией, то необходимо выполнить команду: <source lang="bash"> # growisofs -M /dev/dvd=/dev/zero </source> где /dev/dvd - пишущий привод. Вместо /dev/dvd может быть /dev/cdrom. == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо приобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. === Восcтанавливаем chmod === Стандартный chmod для директорий 755, а для файлов 644. Восстановление происходит в 2 этапа, сначала для директорий, а затем для файлов. <source lang="bash"> # find /dir -type d -print -exec chmod 755 {} \; # find /dir -type f -print -exec chmod 644 {} \; </source> [[ro:FAQ/ro]] 870268aff88ef705b13219e39dbc81204de47b11 Как узнать что за железо стоит на тачке 0 153 394 2009-01-08T19:03:42Z LMZ 23 Новая: всегда было интересно, как узнать что за тазик бегает под клавой. Доступна только консоль и рут доступ... wikitext text/x-wiki всегда было интересно, как узнать что за тазик бегает под клавой. Доступна только консоль и рут доступ(?!). c8eb1920d818c7ab80424e939b5de6daef34f4f1 Обсуждение:Как узнать что за железо стоит на тачке 1 154 395 2009-01-09T06:47:25Z VasileVsx 2 example wikitext text/x-wiki Можно было начать эту тему в блоге, и потом собрать из комментариев. Ну да ладно - сделаем. Если речь о ''Linux'', то первичный источник информации - виртуальная файловая система '''procfs''' (и находим мы её в точке монтирования /proc). Она чуть более "человечная" чем более новая '''sysfs'''. Интересные "железные" файлы в /proc это: cpuinfo - по довольно объемлющей записи на ядро/процессор. Но информации по L3 кэшу здесь не найдем. meminfo - как правило интересно только значение MemTotal - округляем в большую сторону для получения объема физической памяти. PCI (про ISA/MCA/VLB уже все забыли надеюсь) устройства видны в выводе команды lspci (хотя первоисточник тот-же - /proc/bus/pci/devices). Пример вывода: <code> [vasile@ip-172 proc]$ lspci 00:00.0 RAM memory: nVidia Corporation C51 Host Bridge (rev a2) 00:00.1 RAM memory: nVidia Corporation C51 Memory Controller 0 (rev a2) 00:00.2 RAM memory: nVidia Corporation C51 Memory Controller 1 (rev a2) 00:00.3 RAM memory: nVidia Corporation C51 Memory Controller 5 (rev a2) 00:00.4 RAM memory: nVidia Corporation C51 Memory Controller 4 (rev a2) 00:00.5 RAM memory: nVidia Corporation C51 Host Bridge (rev a2) 00:00.6 RAM memory: nVidia Corporation C51 Memory Controller 3 (rev a2) 00:00.7 RAM memory: nVidia Corporation C51 Memory Controller 2 (rev a2) 00:02.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1) 00:03.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1) 00:04.0 PCI bridge: nVidia Corporation C51 PCI Express Bridge (rev a1) 00:05.0 VGA compatible controller: nVidia Corporation C51PV [GeForce 6150] (rev a2) 00:09.0 RAM memory: nVidia Corporation MCP51 Host Bridge (rev a2) 00:0a.0 ISA bridge: nVidia Corporation MCP51 LPC Bridge (rev a2) 00:0a.1 SMBus: nVidia Corporation MCP51 SMBus (rev a2) 00:0a.2 RAM memory: nVidia Corporation MCP51 Memory Controller 0 (rev a2) 00:0b.0 USB Controller: nVidia Corporation MCP51 USB Controller (rev a2) 00:0b.1 USB Controller: nVidia Corporation MCP51 USB Controller (rev a2) 00:0d.0 IDE interface: nVidia Corporation MCP51 IDE (rev a1) 00:0e.0 IDE interface: nVidia Corporation MCP51 Serial ATA Controller (rev a1) 00:0f.0 IDE interface: nVidia Corporation MCP51 Serial ATA Controller (rev a1) 00:10.0 PCI bridge: nVidia Corporation MCP51 PCI Bridge (rev a2) 00:10.2 Multimedia audio controller: nVidia Corporation MCP51 AC97 Audio Controller (rev a2) 00:14.0 Bridge: nVidia Corporation MCP51 Ethernet Controller (rev a1) 00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control </code> Всё довольно информативно для опытного пользователя - мат.плата со встроенным видео, звуком и сетью GeForce 6150. О звуке узнаём от ALSA: <code>[vasile@ip-172 proc]$ cat /proc/asound/cards 0 [ICH ]: NFORCE - Intel ICH Intel ICH with ALC850 at irq 22 </code> О видеокарте и мониторе (случай с NVIDIA драйвером не показателен) из лог-файлов Xorg сервера: <code> $ grep PCI /var/log/Xorg.0.log (--) PCI:*(0@0:5:0) nVidia Corporation C51PV [GeForce 6150] rev 162, Mem @ 0xfc000000/16777216, 0xd0000000/268435456, 0xfb000000/16777216, BIOS @ 0x????????/131072 (II) Primary Device is: PCI 00@00:05:0 (II) NVIDIA(0): NVIDIA GPU GeForce 6150 (C51) at PCI:0:5:0 (GPU-0) (--) NVIDIA(0): Connected display device(s) on GeForce 6150 at PCI:0:5:0: </code> Аналогично для шины USB имеем команду lsusb (или /proc/bus/usb/devices): <code> [vasile@ip-172 proc]$ lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 002: ID 046d:c040 Logitech, Inc. Corded Tilt-Wheel Mouse Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub </code> Хабы игнорируем, остаётся только одна единица периферии - мышь Ligitech RX300. Теперь НЖМД. О разбивке на разделы и общем объеме может рассказать fdisk: <code> /sbin/fdisk -l</code> <code>Disk /dev/sda: 250.0 GB, 250059350016 bytes 255 heads, 63 sectors/track, 30401 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk identifier: 0x4ad94ad8</code> <code> Device Boot Start End Blocks Id System</code> <code>/dev/sda1 28579 30401 14643247+ 83 Linux /dev/sda2 1 28316 227448238+ f W95 Ext'd (LBA) /dev/sda3 28330 28578 2000092+ 82 Linux swap / Solaris /dev/sda4 * 28317 28329 104422+ 83 Linux /dev/sda5 1609 22494 167766795 83 Linux /dev/sda6 1 1608 12916165+ 83 Linux /dev/sda7 22495 28316 46765183+ 8e Linux LVM </code> а также из вывода dmesg (там в принципе есть все вышеперечисленное): <code> $ dmesg|grep -i -E hdd\|\\bata ata1: SATA max UDMA/133 cmd 0x9f0 ctl 0xbf0 bmdma 0xe000 irq 21 ata2: SATA max UDMA/133 cmd 0x970 ctl 0xb70 bmdma 0xe008 irq 21 ata3: SATA max UDMA/133 cmd 0x9e0 ctl 0xbe0 bmdma 0xcc00 irq 20 ata4: SATA max UDMA/133 cmd 0x960 ctl 0xb60 bmdma 0xcc08 irq 20 ata4: SATA link up 3.0 Gbps (SStatus 123 SControl 300) ata4.00: ATA-7: SAMSUNG SP2504C, VT100-50, max UDMA7 ata4.00: 488397168 sectors, multi 16: LBA48 NCQ (depth 31/32) ata4.00: configured for UDMA/133 scsi 3:0:0:0: Direct-Access ATA SAMSUNG SP2504C VT10 PQ: 0 ANSI: 5 ata5: PATA max UDMA/133 cmd 0x1f0 ctl 0x3f6 bmdma 0xf400 irq 14 ata6: PATA max UDMA/133 cmd 0x170 ctl 0x376 bmdma 0xf408 irq 15 ata5.00: ATAPI: _NEC CD-RW/DVD-ROM CB-1100B, NS00, max UDMA/33 ata5: nv_mode_filter: 0x739f&0x701f->0x701f, BIOS=0x7000 (0xc0000000) ACPI=0x701f (60:600:0x13) ata5.00: configured for UDMA/33 </code> 7343d6ac9f9be5cbc1142953987a924597bb08a5 Все что Вы хотели знать о SSH 0 111 396 257 2009-01-14T09:21:08Z 83.221.204.86 0 /* Безопасность кодовой фразы */ wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключ кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться. ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port:destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> [[Category:Статьи]] b33645f194854c0fbb80f7b5838f23dca84cada8 431 396 2009-07-21T14:37:01Z 85.249.15.160 0 wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключ кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться. ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port:destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> === SSH-клиенты и оболочки === * GNU/Linux: [http://utils.kde.org/projects/kdessh/ kdessh], lsh-client, [http://www.openssh.com/ openssh-client], [http://putty.org.ru/ PuTTY] * MS Windows и Windows NT: [http://putty.org.ru/ PuTTY], [http://www.vandyke.com/products/securecrt/ SecureCRT], ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD * MS Windows Mobile: [http://www.pocketputty.net/ PocketPuTTy], mToken, sshCE, PocketTTY, OpenSSH, PocketConsole * Mac OS: NiftyTelnet SSH * Symbian OS: [http://s2putty.sourceforge.net/ PuTTY] * Java: MindTerm, AppGate Security Server * J2ME: MidpSSH * iPhone: [http://www.instantcocoa.com/products/pTerm/ pTerm], i-SSH, ssh (в комплекте с Terminal) [[Category:Статьи]] 8f537fc0a5ea044163e550268ba27c70628f8185 Участник:Igor Zaytsev 2 155 397 2009-01-14T09:23:07Z Igor Zaytsev 25 Новая: [[Участник:tulipak22]] Личные данные: '''Город:''' [[Уфа]] '''Образование:''' УГАТУ АТС '''Область интересов:''' Пр... wikitext text/x-wiki [[Участник:tulipak22]] Личные данные: '''Город:''' [[Уфа]] '''Образование:''' УГАТУ АТС '''Область интересов:''' Программирование. '''Родился:''' 12 августа 1986 года '''Место работы:''' ООО «Инфран», программист. '''Интересы:''' Всего по немногу, на первом месте конечно же программуха и кампы. Лыжи, музыка и проч. '''О себе:''' Пиво, пиво, женщины, пиво, кампы, пиво, снова кампы, опять пиво...... '''E-mail:''' tulipak22@yandex.ru ---- '''Сайты по интересам:''' [http://www.abro.by Ссылка1]| [http://www.tif.by Ссылка2]| [http://www.acer1005.ru Ссылка3]| [http://www.acer3683.ru Ссылка4]| [http://www.acer3684.ru Ссылка5]| [http://www.acer3693.ru Ссылка6]| [http://www.acer3694.ru Ссылка7]| [http://www.acer4220.ru Ссылка8]| [http://www.acer4310.ru Ссылка9]| [http://www.acer5105.ru Ссылка10] 525b7bb532d92f85f0bc6fcb94f7f9748dc994b2 398 397 2009-01-14T10:50:54Z VasileVsx 2 SEO like links removed wikitext text/x-wiki [[Участник:tulipak22]] Личные данные: '''Город:''' [[Уфа]] '''Образование:''' УГАТУ АТС '''Область интересов:''' Программирование. '''Родился:''' 12 августа 1986 года '''Место работы:''' ООО «Инфран», программист. '''Интересы:''' Всего по немногу, на первом месте конечно же программуха и кампы. Лыжи, музыка и проч. '''О себе:''' Пиво, пиво, женщины, пиво, кампы, пиво, снова кампы, опять пиво...... '''E-mail:''' tulipak22@yandex.ru ---- abaf6cd3dfdf00cdef1cc7b66de03c92ba4e778a Участник:Jekader 2 113 400 236 2009-02-10T19:36:00Z Jekader 4 wikitext text/x-wiki http://jekader.fedora.md ... d387b07e8f35c83083524efc406f7add7fe809cd Debian: использование молдавского зеркала 0 98 401 199 2009-02-10T19:40:09Z Jekader 4 wikitext text/x-wiki Debian - это, пожалуй, один из лучших дистрибутивов - и недвано появилась возможность обновлять систему с молдавского зеркала, ускоряя процесс, и экономя траффик. В Debian GNU/Linux, как и других основанных на нём дистрибутивах, репозитории записываются в файле /etc/apt/sources.list – его нам и предстоит править. Сначала, создадим резервную копию существующих настроек: <source lang="bash"> sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup </source> Теперь, откроем файл для редактирования. * Для Gnome <source lang="bash"> gksudo gedit /etc/apt/sources.list </source> * Для KDE <source lang="bash"> kdesu kwrite /etc/apt/sources.list </source> * Для Xfce <source lang="bash"> gksudo mousepad /etc/apt/sources.list </source> Удаляем содержимое (если что - у нас есть резервная копия) Теперь, в пустой документ вставляем следующее: Для Debian Stable (Etch) <source lang="cfc"> deb http://www.debian.md/debian/ etch main non-free contrib deb-src http://www.debian.md/debian/ etch main non-free contrib # security deb http://www.debian.md/debian-security/ etch/updates main non-free contrib deb-src http://www.debian.md/debian-security/ etch/updates main non-free contrib </source> Для Debian Testing <source lang="cfc"> deb http://www.debian.md/debian/ testing main non-free contrib deb-src http://www.debian.md/debian/ testing main non-free contrib # security deb http://www.debian.md/debian-security/ testing/updates main non-free contrib deb-src http://www.debian.md/debian-security/ testing/updates main non-free contrib </source> Готово. Для проверки, запускаем <source lang="bash"> sudo aptitude update </source> и наслаждаемся :) Данное описание включает лишь стандартные репозитории, зеркало которых есть в Молдове. [[Category:Установка и настройка]] [[Category:Другие дистрибутивы]] a1b6bac3fce397214d3c0123eadd3048816fefef TyyyT 0 157 402 2009-02-20T02:58:57Z 81.25.42.215 0 Новая: [[Участник:PetrZaxarov]] Личные данные: '''Город:''' [[Москва]] '''Образование:''' МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УН... wikitext text/x-wiki [[Участник:PetrZaxarov]] Личные данные: '''Город:''' [[Москва]] '''Образование:''' МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ЭКОНОМИКИ, СТАТИСТИКИ И ИНФОРМАТИКИ '''Область интересов:''' Программирование. '''Родился:''' 19 января 1978 года. '''Место работы:''' Исчу работу. '''Интересы:''' Пиво, бар, тусовки. '''О себе:''' Люблю посидеть в баре и попить пива... '''E-mail:''' petrzaxarov@tut.by ---- '''Сайты по интересам:''' [http://www.canon1000d.ru Ссылка1]| [http://www.canon1000dkit.ru Ссылка2]| [http://www.canon50dbody.ru Ссылка3]| [http://www.canon50dkit.ru Ссылка4]| [http://www.canon5d.ru Ссылка5]| [http://www.canon85is.ru Ссылка6]| [http://www.canoneos40d.ru Ссылка7]| [http://www.canoneos450d.ru Ссылка8]| [http://www.canong10.ru Ссылка9]| [http://www.canonsx10.ru Ссылка10] 0046e112cc1a2207735d9c3fa6a05ab62e8feb2d 403 402 2009-02-20T06:19:09Z VasileVsx 2 SEO Links deleted wikitext text/x-wiki [[Участник:PetrZaxarov]] Личные данные: '''Город:''' [[Москва]] '''Образование:''' МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ЭКОНОМИКИ, СТАТИСТИКИ И ИНФОРМАТИКИ '''Область интересов:''' Программирование. '''Родился:''' 19 января 1978 года. '''Место работы:''' Исчу работу. '''Интересы:''' Пиво, бар, тусовки. '''О себе:''' Люблю посидеть в баре и попить пива... '''E-mail:''' petrzaxarov@tut.by 7fcfe98551f0a47f1aa89b582b4db89d5d73c6f5 Обсуждение участника:TolFurman 3 158 404 2009-02-24T02:12:28Z TolFurman 36 Новая: [[Участник:TolFurman]] '''О себе:''' Анатолий Фурманов '''Город:''' [[Москва]] '''Область интересов:''' Архитектур... wikitext text/x-wiki [[Участник:TolFurman]] '''О себе:''' Анатолий Фурманов '''Город:''' [[Москва]] '''Область интересов:''' Архитектура. '''Интересы:''' Архитектура второй половины XIX в. '''E-mail:''' TolFurman@yandex.ru ---- '''Интересные сайты:''' [http://www.ukrsemena.biz Сайт 1]| [http://www.valencia-cf.ru Сайт 2]| [http://www.dollarcredit.ru Сайт 3]| [http://www.ipoteknews.ru Сайт 4]| [http://www.the-casino.ru Сайт 5]| [http://www.tonado.ru Сайт 6]| [http://www.mixer.by Сайт 7]| [http://zhdanovichi.com Сайт 8]| [http://wmstrana.com Сайт 9]| [http://www.wdl.by Сайт 10] 579d9c61af44d624bc3eaef1871f8649419fadc9 405 404 2009-02-24T06:43:29Z VasileVsx 2 SEO Links removed wikitext text/x-wiki [[Участник:TolFurman]] '''О себе:''' Анатолий Фурманов '''Город:''' [[Москва]] '''Область интересов:''' Архитектура. '''Интересы:''' Архитектура второй половины XIX в. '''E-mail:''' TolFurman@yandex.ru ---- 7855b540a41471f65575afa50979943fef9d7900 Обсуждение участника:Akkurochkin 3 159 406 2009-02-27T01:12:14Z Akkurochkin 38 Новая: [[Участник:Akkurochkin]] '''О себе:''' Александр Курочкин '''Город:''' [[Волгоград]] '''Область интересов:''' Музык... wikitext text/x-wiki [[Участник:Akkurochkin]] '''О себе:''' Александр Курочкин '''Город:''' [[Волгоград]] '''Область интересов:''' Музыка '''Интересы:''' Играю на гитаре '''E-mail:''' Akkurochkin@yandex.ru ---- '''Интересные сайты:''' [http://www.the-bet.ru Сайт 1]| [http://www.the-mobile.ru Сайт 2]| [http://www.timecredit.ru Сайт 3]| [http://www.tradingfirms.ru Сайт 4]| [http://www.wmstrana.com Сайт 5]| [http://www.yugrapress.ru Сайт 6]| [http://www.zxformat01.ru Сайт 7]| [http://www.rem-minsk.by Сайт 8]| [http://www.1fbo.ru/ Сайт 9]| b908319eae6a012a4a95e2789e81067edaefc90d 407 406 2009-02-27T11:49:59Z VasileVsx 2 SEO SPAM wikitext text/x-wiki [[Участник:Akkurochkin]] '''О себе:''' Александр Курочкин '''Город:''' [[Волгоград]] '''Область интересов:''' Музыка '''Интересы:''' Играю на гитаре '''E-mail:''' Akkurochkin@yandex.ru d5098d3b03f099b6ea974b4a6f2829b6c6fbc693 Участник:YaroslavArfenev 2 160 408 2009-03-05T09:01:44Z YaroslavArfenev 41 Новая: [[Участник:YaroslavArfenev]] '''О себе:''' Yaroslav Arfenev '''Город:''' [[Смоленск]] '''Область интересов:''' Путешествия, б... wikitext text/x-wiki [[Участник:YaroslavArfenev]] '''О себе:''' Yaroslav Arfenev '''Город:''' [[Смоленск]] '''Область интересов:''' Путешествия, бизнес. '''Интересы:''' Про мои интересы можно прочитать на сайте [http://www.karelian.ru Карелия, отдых в карелии], а так же [http://www.turismi.ru туризм в финляндии] и [http://www.karelizba.ru тоже отдых в карелии]. '''E-mail:''' yaroslav-arfenev@yandex.ru ---- '''Мною рекомендуемые сайты:''' [http://www.selnews.ru Сельские новости :)]| [http://www.bankregion.ru Банки РФ]| [http://www.rem-minsk.by Ремонт компьютеров, Ремонт ноутбуков, восстановление информации]| [http://www.zxformat01.ru ZX Spectrum] Сайт посвященный журналу ZXformat| [http://www.zxhacker.ru ZX Spectrum2]в продолжении спектрум тематики| [http://www.zxpilot.ru ZX Spectrum3] и еще немного о спектрумах| [http://www.overlogs.ru ZX Spectrum4]. 09891e209d3f1895d7c0531e5347280a0cc85d73 409 408 2009-03-05T11:41:41Z VasileVsx 2 SEO Links removed wikitext text/x-wiki [[Участник:YaroslavArfenev]] '''О себе:''' Yaroslav Arfenev '''Город:''' [[Смоленск]] '''Область интересов:''' Путешествия, бизнес. '''Интересы:''' Про мои интересы можно прочитать на сайте [http://www.karelian.ru Карелия, отдых в карелии], а так же [http://www.turismi.ru туризм в финляндии] и [http://www.karelizba.ru тоже отдых в карелии]. '''E-mail:''' yaroslav-arfenev@yandex.ru ---- 6a0534cc23b236c2cbfb73384a788f57496d04e1 Установка Broadcom Wi-Fi драйвера 0 161 410 2009-03-16T08:50:00Z OlegA 1 Новая: {{Суперпользователь}} == Установка == 1. Добавление репозитория RPM Fussion, если ещё не добавлен: <source lang="bash"> #... wikitext text/x-wiki {{Суперпользователь}} == Установка == 1. Добавление репозитория RPM Fussion, если ещё не добавлен: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/rpmfusion/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm </source> 2. Устанавливаем пакет broadcom-wl.noarch: <source lang="bash"> # yum install broadcom-wl </source> Установятся также модуль для текущего ядра. 3. Перезагружаем систему для загрузки модуля ядра. 4. Будет добавлен новый интерфейс eth. [[Category:Установка и настройка]] [[Category:Драйвера]] 61de820e32d0041cbdf2cf198e40d238f6ef58da Установка Atheros Wi-Fi драйвера 0 162 411 2009-03-17T07:46:10Z OlegA 1 Новая: {{Суперпользователь}} == Установка == 1. Добавление репозитория RPM Fussion, если ещё не добавлен: <source lang="bash"> #... wikitext text/x-wiki {{Суперпользователь}} == Установка == 1. Добавление репозитория RPM Fussion, если ещё не добавлен: <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/mirrors/rpmfusion/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm </source> 2. Устанавливаем пакет madwifi: <source lang="bash"> # yum install madwifi </source> Установятся также модуль для текущего ядра. 3. Перезагружаем систему для загрузки модуля ядра. 4. Будет добавлен новый интерфейс ath. [[Category:Установка и настройка]] [[Category:Драйвера]] 170c65d7b720e0373dfc86d8953fa84423a2f7c3 Установка поддержки проприетарных форматов мультимедиа 0 57 412 141 2009-03-25T20:33:07Z 217.71.225.4 0 /* Подготовка */ wikitext text/x-wiki {{Суперпользователь}} * [http://www.fedorafaq.org/#installsoftware FedoraFAQ] * [http://www.gagme.com/greg/linux/fc6-tips.php#mp3 Fedora Core 6 Tips and Tricks] == Установка поддержки проприетарных форматов мультимедиа == === Подготовка === Предварительно нужно настроить репозиорий yum. Для Fedora 7: <source lang="bash"> # rpm -ivh http://rpm.livna.org/livna-release-7.rpm </source> Т.к. репозитория livna больше нет, точнее он слился с остальными Dribble, Freshrpms в проект [http://rpmfusion.org RPMFusion], теперь настройка упрощена: Для Fedora 8,9,10: <source lang="bash"> # rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm </source> Для остальных сборок Fedora (Alfa, Beta и т.д.) читайте на [http://rpmfusion.org/Configuration RPMFusion] Если вы установили пакет fedoramd-release согласно инструкции, то этот шаг можно пропустить - наш репозиторий включает в себя копию livna. === Установка === * Для поддержки проприетарных форматов в приложениях использующих GStreamer. <source lang="bash"> # yum -y install libtunepimp-extras-nonfree gstreamer-ffmpeg gstreamer-plugins-ugly </source> * Для поддержки проприетарных форматов в audacity, audacious, xmms. <source lang="bash"> # yum -y install audacity-nonfree audacious-plugins-nonfree-aac \ audacious-plugins-nonfree-alac audacious-plugins-nonfree-mp3 \ audacious-plugins-nonfree-wma xmms xmms-mp3 xmms-faad2 </source> * Для поддержки проприетарных форматов в KDE приложениях <source lang="bash"> # yum -y install kdemultimedia-extras-nonfree k3b-extras-nonfree amarok-extras-nonfree akode-extras </source> * Проигрывание видео, DVD в xine. <source lang="bash"> # yum -y install xine xine-lib xine-lib-extras-nonfree libdvdcss </source> * Проигрывание видео, DVD в mplayer. <source lang="bash"> # yum -y install mplayer-gui mplayer-fonts mplayer </source> * Проигрывание видео, DVD в totem. <source lang="bash"> # echo -e "remove totem totem-plparser\n install totem-xine totem-xine-plparser libdvdcss libdvdnav\n run\n quit" | yum -y shell </source> [[Category:Установка и настройка]] [[Category:Настройка системы]] b1ad8de76da0c109565525db68507a922734b9e6 Участник:OlegA 2 121 413 348 2009-04-25T07:53:32Z OlegA 1 wikitext text/x-wiki == Любимые видео-потоки == * mms://vipnrj.yacast.net/nrj_tvhit * mms://vipnrj.yacast.net/nrj_webtv02 * mms://vipmms9.yacast.net/mcm_top * mms://video.rfn.ru/vesti_24 == Цитаты == * Стринги - это струна, натянутая на 2 чудесных барабана. * Сказки — это страшные истории, бережно подготавливающие детей к чтению газет и просмотру теленовостей. == Загадки == 1. Чтобы спереди погладить, нужно сзади полизать. (Почтовая марка) 2. Кругом волоса, посредине колбаса. (Кукуруза) 3. Сверху черно внутри красно, как засунешь так прекрасно. (Галоши) 4. Волос на волос, тело на тело и начинается темное дело. (Веки) 5. То холодный - то горячий, то висячий - то стоячий. (Душ) 6. Туда - сюда - обратно, тебе и мне приятно. (Качели) 7. Что ты смотришь на меня? Раздевайся я твоя! (Кровать) 8. Волосатая головка за щеку заходит ловко. (Зубная щетка) 9. Мы - ребята удалые лазим в щели половые! (Веник) 10. Лежит на спине - никому не нужна. Прислони к стене - пригодится она. (Лестница) 11. В темной комнате, на белой простыне 2 часа удовольствия. (Кино) 12. Ты помни его немножко, станет твердым как картошка. (Снежок) 13. Возьму его в руки, Сожму его крепко - Он станет упругим и твердым как репка. (Снежок) 14. Красная головка в дырку лезет ловко (Дятел) 15. Маленькая, черная, сморщенная - есть у каждой женщины. (Изюминка) 16. Если б не бабушкины лохматушки - мерзли бы дедушкины колотушки. (Варежки) 17. Не хрен, не морковка - красная головка. (Пионер в пилотке) 18. Сзади подошел, сунул и пошел. (Тапочки) 19. Как хорошо тебе и мне, когда лежишь ты на спине... (Ежик с яблоком) 20. Беру двумя руками, сую между ногами... (Велосипед) ---- [[Изображение:brain.gif]] a1358bd18be6b393ff992d5416f3cff82046578f VirtualBox FAQ 0 163 414 2009-04-26T22:08:19Z OlegA 1 Создана новая страница размером {{Суперпользователь}} == Подключение USB устройств == Для того, чтобы VirtualBox вид... wikitext text/x-wiki {{Суперпользователь}} == Подключение USB устройств == Для того, чтобы VirtualBox видел и имел доступ к USB устройствам необходимо следующее: <source lang="bash"> # mount –rbind /dev/bus/usb /proc/bus/usb </source> [[Category:Программное обеспечение]] b2434eacc2515c7b1d84f51d2ee6b1c24269ec36 425 414 2009-06-17T21:30:17Z OlegA 1 wikitext text/x-wiki {{Суперпользователь}} == Подключение USB устройств == Для того, чтобы VirtualBox видел и имел доступ к USB устройствам необходимо следующее: <source lang="bash"> # mount --rbind /dev/bus/usb /proc/bus/usb </source> [[Category:Программное обеспечение]] fbb4d5eb557e8e6e0cf1b41e103471755e931623 427 425 2009-06-24T20:43:04Z OlegA 1 переименовал «[[VirtaulBox FAQ]]» в «[[VirtualBox FAQ]]» wikitext text/x-wiki {{Суперпользователь}} == Подключение USB устройств == Для того, чтобы VirtualBox видел и имел доступ к USB устройствам необходимо следующее: <source lang="bash"> # mount --rbind /dev/bus/usb /proc/bus/usb </source> [[Category:Программное обеспечение]] fbb4d5eb557e8e6e0cf1b41e103471755e931623 Участник:VasileVsx 2 144 415 371 2009-05-22T04:56:21Z VasileVsx 2 Plymouth theme change wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm opțiunea -v - verbose ==== Cum de nu lăsat "urme" ==== Fie avem access la sudo pe un computer. Avem nevoie ca unele operații a noastre să rămînă private. Pentru ca alt administrator să nu afle istoricul comenzilor administrative: 1. utilizăm sudo numai pentru a porni bash shell, și nu pentru a executa comenzi propriu zise. Toate comenzile lansate cu sudo nimeresc în jurnale de sistem. Deci utilizăm <code>sudo su -</code> pentru a ridica nivelul de privilegii 2. Toate comenzile bash (shell implicit în majoritatea sistemelor linux) se salvează în fișierul ~/.bash_history. Îl putem șterge, dar la ieșire el va fi recreat cu istoricul păstrat în memorie operativă. Deci pentru a ascunde lista comenzilor din sesiunea curentă noi "ucidem" shell current (mai exact - părintele său, comanda su) ;) <code>kill $PPID</code> ==== F10 upgrade ==== (14:52:53) skid: кстати ты случайно не знаешь что случилось с лэйаутами в f10 ? (14:53:13) skid: переключение на разные языки не очень работает нормально (15:11:53) vchelban@gmail.com/WorkFA0EBD46: Znaiu, vsio znaiu :D (15:12:04) vchelban@gmail.com/WorkFA0EBD46: Ia je v nei jivu s F10 Beta (15:12:39) vchelban@gmail.com/WorkFA0EBD46: Ti navernoe kinul svoi xorg.conf starii (15:13:00) vchelban@gmail.com/WorkFA0EBD46: Tak vot - diver klaviaturi nujno ispolizovati evdev (15:13:07) vchelban@gmail.com/WorkFA0EBD46: a ne keyboard, ne kbd (15:13:37) vchelban@gmail.com/WorkFA0EBD46: I voobshe - 4asto fedora 10 neploho rabotaet voobshe bez xorg.conf (15:13:56) vchelban@gmail.com/WorkFA0EBD46: Takje esli u tebia bil ~/.Xmodmap - lu4she eko poka otkliu4iti === Plymouth theme/plugin change === # yum install plymouth-system-theme # plymouth-set-default-theme charge # /usr/libexec/plymouth/plymouth-update-initrd 8d5ebff4062423d05e4286a4dfaa890445f776c7 416 415 2009-06-01T05:15:00Z VasileVsx 2 add plymouth link wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm opțiunea -v - verbose ==== Cum de nu lăsat "urme" ==== Fie avem access la sudo pe un computer. Avem nevoie ca unele operații a noastre să rămînă private. Pentru ca alt administrator să nu afle istoricul comenzilor administrative: 1. utilizăm sudo numai pentru a porni bash shell, și nu pentru a executa comenzi propriu zise. Toate comenzile lansate cu sudo nimeresc în jurnale de sistem. Deci utilizăm <code>sudo su -</code> pentru a ridica nivelul de privilegii 2. Toate comenzile bash (shell implicit în majoritatea sistemelor linux) se salvează în fișierul ~/.bash_history. Îl putem șterge, dar la ieșire el va fi recreat cu istoricul păstrat în memorie operativă. Deci pentru a ascunde lista comenzilor din sesiunea curentă noi "ucidem" shell current (mai exact - părintele său, comanda su) ;) <code>kill $PPID</code> ==== F10 upgrade ==== (14:52:53) skid: кстати ты случайно не знаешь что случилось с лэйаутами в f10 ? (14:53:13) skid: переключение на разные языки не очень работает нормально (15:11:53) vchelban@gmail.com/WorkFA0EBD46: Znaiu, vsio znaiu :D (15:12:04) vchelban@gmail.com/WorkFA0EBD46: Ia je v nei jivu s F10 Beta (15:12:39) vchelban@gmail.com/WorkFA0EBD46: Ti navernoe kinul svoi xorg.conf starii (15:13:00) vchelban@gmail.com/WorkFA0EBD46: Tak vot - diver klaviaturi nujno ispolizovati evdev (15:13:07) vchelban@gmail.com/WorkFA0EBD46: a ne keyboard, ne kbd (15:13:37) vchelban@gmail.com/WorkFA0EBD46: I voobshe - 4asto fedora 10 neploho rabotaet voobshe bez xorg.conf (15:13:56) vchelban@gmail.com/WorkFA0EBD46: Takje esli u tebia bil ~/.Xmodmap - lu4she eko poka otkliu4iti === Plymouth theme/plugin change === # yum install plymouth-system-theme # plymouth-set-default-theme charge # /usr/libexec/plymouth/plymouth-update-initrd http://morefedora.blogspot.com/2009/05/personalizzare-il-boot-con-plymouth.html 08ac5b3c96712f70dce28e708ce96ebbd5b566b4 429 416 2009-07-08T08:45:34Z VasileVsx 2 Foto to web wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm opțiunea -v - verbose ==== Cum de nu lăsat "urme" ==== Fie avem access la sudo pe un computer. Avem nevoie ca unele operații a noastre să rămînă private. Pentru ca alt administrator să nu afle istoricul comenzilor administrative: 1. utilizăm sudo numai pentru a porni bash shell, și nu pentru a executa comenzi propriu zise. Toate comenzile lansate cu sudo nimeresc în jurnale de sistem. Deci utilizăm <code>sudo su -</code> pentru a ridica nivelul de privilegii 2. Toate comenzile bash (shell implicit în majoritatea sistemelor linux) se salvează în fișierul ~/.bash_history. Îl putem șterge, dar la ieșire el va fi recreat cu istoricul păstrat în memorie operativă. Deci pentru a ascunde lista comenzilor din sesiunea curentă noi "ucidem" shell current (mai exact - părintele său, comanda su) ;) <code>kill $PPID</code> ==== F10 upgrade ==== (14:52:53) skid: кстати ты случайно не знаешь что случилось с лэйаутами в f10 ? (14:53:13) skid: переключение на разные языки не очень работает нормально (15:11:53) vchelban@gmail.com/WorkFA0EBD46: Znaiu, vsio znaiu :D (15:12:04) vchelban@gmail.com/WorkFA0EBD46: Ia je v nei jivu s F10 Beta (15:12:39) vchelban@gmail.com/WorkFA0EBD46: Ti navernoe kinul svoi xorg.conf starii (15:13:00) vchelban@gmail.com/WorkFA0EBD46: Tak vot - diver klaviaturi nujno ispolizovati evdev (15:13:07) vchelban@gmail.com/WorkFA0EBD46: a ne keyboard, ne kbd (15:13:37) vchelban@gmail.com/WorkFA0EBD46: I voobshe - 4asto fedora 10 neploho rabotaet voobshe bez xorg.conf (15:13:56) vchelban@gmail.com/WorkFA0EBD46: Takje esli u tebia bil ~/.Xmodmap - lu4she eko poka otkliu4iti === Plymouth theme/plugin change === # yum install plymouth-system-theme # plymouth-set-default-theme charge # /usr/libexec/plymouth/plymouth-update-initrd http://morefedora.blogspot.com/2009/05/personalizzare-il-boot-con-plymouth.html === Prelucrăm colecția de fotografii === Pas 1: Sortare. Utilizăm gthumb pentru a separa fotografii cu calitate inferioară, private, destinate pentru publicare online,... etc. Cum? Editare->Preferințe->Taste Rapide. pentru, spre exemplu, taste 7,8,9 setăm 3 comenzi: mkdir -p %p/web/ ; ln %f %p/web/ mkdir -p %p/prelucrare/ ; mv %f %p/prelucrare/ mkdir -p %p/private/ ; mv %f %p/private/ navigăm prin dosar (b,n) și cu taste 7,8,9 marcăm fotografii spre publicare, prelucrare, private. Obținem în dosar web/ o grupă de fotografii pt publicare. aplicăm cu gthumb operația de scalare a imaginii (pt ai micsora dimensiunile) - Unelte /Scalează imagini. Imaini rezultante vor poseda același nume, dar nu și TAG'uri EXIF. le copiem cu ajutorul exiftool: cd dosar_web_scalat; for i in *.jpg; do exiftool -TagsFromFile ../web/$i -all:all $i;done http://pario.no/2008/09/02/rename-files-by-wildcard-pattern-and-correct-the-exif-timestamp-metadata/ 44d6318d0a3f1145949017f5fad1c3aabd5625e7 Обсуждение участника:Lok 3 164 417 2009-06-04T07:39:30Z Lok 47 Создана новая страница размером Персональная страница Сергея Петренко '''О себе''': 25 лет, живу сам с котом, ра... wikitext text/x-wiki Персональная страница Сергея Петренко '''О себе''': 25 лет, живу сам с котом, работаю на общественных началах. '''Город''': Самара '''Область интересов''': Чтение интересных книг, просмотр кинофильмов. '''Интересы''': Красивые девушки и дорогие автомобили. E-mail: serrkjf@yandex.ru ---- [http://yxta-blog.ru Яхты] [http://sigara-blog.ru Сигариллы] [http://cialis-online.ru купить дженерики] [http://bitamin-b.ru витамины] [http://auto-histori92.ru история] [http://buy-generic.ru левитра] [http://kolua.ru продвижение сайтов] [http://flowersworld.biz журнал] [http://invest-blogg.ru новый блог] [http://volga-in-ua.ru про авто] 04e61339582f23e16156eb2741a9f76cee69792f 418 417 2009-06-08T11:02:15Z VasileVsx 2 SPAM removed wikitext text/x-wiki Персональная страница Сергея Петренко '''О себе''': 25 лет, живу сам с котом, работаю на общественных началах. '''Город''': Самара '''Область интересов''': Чтение интересных книг, просмотр кинофильмов. '''Интересы''': Красивые девушки и дорогие автомобили. E-mail: serrkjf@yandex.ru 55964f4df5f7141bb327fe4e242da02e0347872f Repozitori:Fedora 11 0 165 419 2009-06-08T16:36:17Z VasileVsx 2 Pagină nouă: {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 11 (Everything)'', ''Fedora 11 Updates'' pentru architecturile i586 şi x86_64 * ''Livna'' ... wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 11 (Everything)'', ''Fedora 11 Updates'' pentru architecturile i586 şi x86_64 * ''Livna'' pentru Fedora 11 (architecturile i586 şi x86_64) * ''RPMFusion'' pentru Fedora 11 (architecturile i586 şi x86_64) * ''RussianFedora'' pentru Fedora 11 (architecturile i586 şi x86_64) * ''FMD'' pentru Fedora 11 (architecturile i586 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-11'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-11.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat}} [[Category:Repozitorii|Fedora 11]] [[ru:Репозиторий:Fedora 11]] 3fc7f51879470ddd207438d7f179ede0d5dae3a4 Репозиторий:Fedora 11 0 166 422 2009-06-08T16:39:56Z VasileVsx 2 Pagină nouă: {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 11 (Everything)'',... wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 11 (Everything)'', ''Fedora 11 Updates'' для i586 и x86_64 архитектур * ''Livna'' для Fedora 11 (i586 и x86_64 архитектуры) * ''RPMFusion'' для Fedora 11 (i586 и x86_64 архитектуры) * ''RussianFedora'' для Fedora 11 (i586 и x86_64 архитектуры) * ''FMD'' для Fedora 11 (i586 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с нашим сайтом установите пакет ''fedoramd-release-11'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-11.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 11]] [[ro:Repozitori:Fedora 11]] 7a7517314811f337355136208d464f34d1864ebc VirtaulBox FAQ 0 170 428 2009-06-24T20:43:04Z OlegA 1 переименовал «[[VirtaulBox FAQ]]» в «[[VirtualBox FAQ]]» wikitext text/x-wiki #перенаправление [[VirtualBox FAQ]] 2274ba71b7a4c64a41ac42db643f508630bb90f1 Обсуждение участника:Maxie04e 3 171 430 2009-07-16T22:12:04Z Maxie04e 53 Создана новая страница размером Меня зовут Макс, я из Минска, учусь в шестом классе. У меня много друзей, люб... wikitext text/x-wiki Меня зовут Макс, я из Минска, учусь в шестом классе. У меня много друзей, люблю проводить с ними временя. Увлекаюсь компьютером, мечтаю стать программистом. Из праздников люблю новый год. Зима самое интересное время года, можно кататься на санках, лыжах. Также люблю осень, осенью мы всей семьей ездим за грибами. Я люблю не только собирать грибы но и их есть. Интересные сайты: [http://www.abamag.ru Сайт 1] [http://www.abckupi.ru Сайт 2] [http://www.abckupilkin.ru Сайт 3] [http://www.abcmagazin.ru Сайт 4][http://www.allbayeasy.ru Сайт 5] 2edd7427517fc029070686b7348471b182dddf78 Установка CAPT принтеров Canon LaserShot на примере LBP-1120 0 87 432 187 2009-07-29T14:13:18Z VasileVsx 2 updated to drver ver 1.80 wikitext text/x-wiki {{Суперпользователь}} [http://software.canon-europe.com/software/0031118.asp?model= Страница загрузки] == Подготовка == Закачиваем драйвер с сайта Canon. Архив ''CAPTDRV180.tar.gz'' содержит два RPM пакета. Распаковываем его: <source lang="bash"> $ tar xf CAPTDRV180.tar.gz </source> убеждаемся что подсистема печати установлена: <source lang="bash"> # yum install cups </source> И отключаем SELinux для подсистемы печати: <source lang="bash"> # setsebool -P cupsd_config_disable_trans=1 cupsd_lpd_disable_trans=1 cupsd_lpd_disable_trans=1 </source> == Установка == Устанавливаем capt драйвер и перезагружаем сервис cups: <source lang="bash"> # cd CANON_UK/Driver/RPM/ # rpm -ivh cndrvcups-capt-1.80-1.i386.rpm cndrvcups-common-1.80-1.i386.rpm # service cups restart </source> Регистрируем принтер принтер под именем ''LBP1120'' используя файл описания соответствующий нашей модели принтера - ''CNCUPSLBP1120CAPTK.ppd'': <source lang="bash"> # /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E </source> Другие файлы описания находим здесь: <source lang="bash"> # ls /usr/share/cups/model/ </source> Создаем FIFO каналы необходимые для связи демона ccpd и cups: <source lang="bash"> # mkdir /var/ccpd # mkfifo -m 666 /var/ccpd/fifo0 # mkfifo -m 666 /var/ccpd/fifo1 # mkfifo -m 666 /var/ccpd/fifo2 # mkfifo -m 666 /var/ccpd/fifo3 # mkfifo -m 666 /var/ccpd/fifo4 # mkfifo -m 666 /var/ccpd/fifo5 # mkfifo -m 666 /var/ccpd/fifo6 # mkfifo -m 666 /var/ccpd/fifo7 # chmod 666 /var/ccpd/fifo* </source> Регистрируем принтер в демоне ccpd и обеспечиваем его запуск при старте системы: <source lang="bash"> # /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0 # service ccpd start # ln -s /etc/init.d/ccpd /etc/rc5.d/S99ccpd </source> Теперь можно запустить графическую утилиту ''system-config-printer'' для проверки прочих параметров, тестовой печати, удаления некорректных предыдущих инсталляций. == Полезные советы == Для проверки состояния принтера удобно использовать графическую утилиту ''captstatusui''. Запускается она командой: <source lang="bash"> $ captstatusui -P LBP1120 </source> где LBP1120 - имя принтера зарегистрированного в подсистеме печати. [[Category:Установка и настройка]] [[Category:Драйвера]] 3e0634b3a0eb1232a0e60ba97a4743f490ea5751 433 432 2009-07-29T16:20:56Z VasileVsx 2 use yum instead of rpm; newer driver does not require manual fifo nodes creation wikitext text/x-wiki {{Суперпользователь}} [http://software.canon-europe.com/software/0031118.asp?model= Страница загрузки] == Подготовка == Закачиваем драйвер с сайта Canon. Архив ''CAPTDRV180.tar.gz'' содержит два RPM пакета. Распаковываем его: <source lang="bash"> $ tar xf CAPTDRV180.tar.gz </source> убеждаемся что подсистема печати установлена: <source lang="bash"> # yum install cups </source> И отключаем SELinux для подсистемы печати: <source lang="bash"> # setsebool -P cupsd_config_disable_trans=1 cupsd_lpd_disable_trans=1 cupsd_lpd_disable_trans=1 </source> == Установка == Устанавливаем capt драйвер и перезагружаем сервис cups: <source lang="bash"> # cd CANON_UK/Driver/RPM/ # yum localinstall --nogpgcheck cndrvcups-capt-1.80-1.i386.rpm cndrvcups-common-1.80-1.i386.rpm # service cups restart </source> Регистрируем принтер принтер под именем ''LBP1120'' используя файл описания соответствующий нашей модели принтера - ''CNCUPSLBP1120CAPTK.ppd'': <source lang="bash"> # /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E </source> Другие файлы описания находим здесь: <source lang="bash"> # ls /usr/share/cups/model/ </source> Создаем FIFO каналы необходимые для связи демона ccpd и cups (не требуется для драйвера 1.80 и новее): <source lang="bash"> # mkdir /var/ccpd # mkfifo -m 666 /var/ccpd/fifo0 # mkfifo -m 666 /var/ccpd/fifo1 # mkfifo -m 666 /var/ccpd/fifo2 # mkfifo -m 666 /var/ccpd/fifo3 # mkfifo -m 666 /var/ccpd/fifo4 # mkfifo -m 666 /var/ccpd/fifo5 # mkfifo -m 666 /var/ccpd/fifo6 # mkfifo -m 666 /var/ccpd/fifo7 # chmod 666 /var/ccpd/fifo* </source> Регистрируем принтер в демоне ccpd и обеспечиваем его запуск при старте системы: <source lang="bash"> # /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0 # service ccpd start # ln -s /etc/init.d/ccpd /etc/rc5.d/S99ccpd </source> Теперь можно запустить графическую утилиту ''system-config-printer'' для проверки прочих параметров, тестовой печати, удаления некорректных предыдущих инсталляций. == Полезные советы == Для проверки состояния принтера удобно использовать графическую утилиту ''captstatusui''. Запускается она командой: <source lang="bash"> $ captstatusui -P LBP1120 </source> где LBP1120 - имя принтера зарегистрированного в подсистеме печати. [[Category:Установка и настройка]] [[Category:Драйвера]] a7066957383acf42a78d47969824848165792076 434 433 2009-07-30T06:40:15Z VasileVsx 2 SElinux note wikitext text/x-wiki {{Суперпользователь}} [http://software.canon-europe.com/software/0031118.asp?model= Страница загрузки] == Подготовка == Закачиваем драйвер с сайта Canon. Архив ''CAPTDRV180.tar.gz'' содержит два RPM пакета. Распаковываем его: <source lang="bash"> $ tar xf CAPTDRV180.tar.gz </source> убеждаемся что подсистема печати CUPS установлена: <source lang="bash"> # yum install cups </source> == Установка == Устанавливаем capt драйвер и перезагружаем сервис cups: <source lang="bash"> # cd CANON_UK/Driver/RPM/ # yum localinstall --nogpgcheck cndrvcups-capt-1.80-1.i386.rpm cndrvcups-common-1.80-1.i386.rpm # service cups restart </source> Регистрируем принтер принтер под именем ''LBP1120'' используя файл описания соответствующий нашей модели принтера - ''CNCUPSLBP1120CAPTK.ppd'': <source lang="bash"> # /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E </source> Другие файлы описания находим здесь: <source lang="bash"> # ls /usr/share/cups/model/ </source> Создаем FIFO каналы необходимые для связи демона ccpd и cups (не требуется для драйвера 1.80 и новее): <source lang="bash"> # mkdir /var/ccpd # mkfifo -m 666 /var/ccpd/fifo0 # mkfifo -m 666 /var/ccpd/fifo1 # mkfifo -m 666 /var/ccpd/fifo2 # mkfifo -m 666 /var/ccpd/fifo3 # mkfifo -m 666 /var/ccpd/fifo4 # mkfifo -m 666 /var/ccpd/fifo5 # mkfifo -m 666 /var/ccpd/fifo6 # mkfifo -m 666 /var/ccpd/fifo7 # chmod 666 /var/ccpd/fifo* </source> Регистрируем принтер в демоне ccpd и обеспечиваем его запуск при старте системы: <source lang="bash"> # /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0 # service ccpd start # ln -s /etc/init.d/ccpd /etc/rc5.d/S99ccpd </source> Теперь можно запустить графическую утилиту ''system-config-printer'' для проверки прочих параметров, тестовой печати, удаления некорректных предыдущих инсталляций. В частности, следует удалить авто определенный принтер с тем же (или схожим именем), но в качестве URI ссылающегося на usb:// устройство (правильный принтер ссылается на ccp:// устройство). == Взаимодействие с SELinux == Переводим SELinux в режим разрешающий (Permissive): <source lang="bash"> # setenforce 0 </source> Запускаем документ на печать. В /var/log/audit/audit.log (при работающем audit демоне, иначе в /var/log/messages) появляются сообщения о SELinux запретах (denials). Создаём для них модули согласно [[Создаем собственное правило SELinux на базе аудит сообщения]] == Полезные советы == Для проверки состояния принтера удобно использовать графическую утилиту ''captstatusui''. Запускается она командой: <source lang="bash"> $ captstatusui -P LBP1120 </source> где LBP1120 - имя принтера зарегистрированного в подсистеме печати. [[Category:Установка и настройка]] [[Category:Драйвера]] 354cac2a71657c7a5b7b655b2110e4311e91f3ff 435 434 2009-07-30T06:49:11Z VasileVsx 2 Selinux back to enforce wikitext text/x-wiki {{Суперпользователь}} [http://software.canon-europe.com/software/0031118.asp?model= Страница загрузки] == Подготовка == Закачиваем драйвер с сайта Canon. Архив ''CAPTDRV180.tar.gz'' содержит два RPM пакета. Распаковываем его: <source lang="bash"> $ tar xf CAPTDRV180.tar.gz </source> убеждаемся что подсистема печати CUPS установлена: <source lang="bash"> # yum install cups </source> == Установка == Устанавливаем capt драйвер и перезагружаем сервис cups: <source lang="bash"> # cd CANON_UK/Driver/RPM/ # yum localinstall --nogpgcheck cndrvcups-capt-1.80-1.i386.rpm cndrvcups-common-1.80-1.i386.rpm # service cups restart </source> Регистрируем принтер принтер под именем ''LBP1120'' используя файл описания соответствующий нашей модели принтера - ''CNCUPSLBP1120CAPTK.ppd'': <source lang="bash"> # /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E </source> Другие файлы описания находим здесь: <source lang="bash"> # ls /usr/share/cups/model/ </source> Создаем FIFO каналы необходимые для связи демона ccpd и cups (не требуется для драйвера 1.80 и новее): <source lang="bash"> # mkdir /var/ccpd # mkfifo -m 666 /var/ccpd/fifo0 # mkfifo -m 666 /var/ccpd/fifo1 # mkfifo -m 666 /var/ccpd/fifo2 # mkfifo -m 666 /var/ccpd/fifo3 # mkfifo -m 666 /var/ccpd/fifo4 # mkfifo -m 666 /var/ccpd/fifo5 # mkfifo -m 666 /var/ccpd/fifo6 # mkfifo -m 666 /var/ccpd/fifo7 # chmod 666 /var/ccpd/fifo* </source> Регистрируем принтер в демоне ccpd и обеспечиваем его запуск при старте системы: <source lang="bash"> # /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0 # service ccpd start # ln -s /etc/init.d/ccpd /etc/rc5.d/S99ccpd </source> Теперь можно запустить графическую утилиту ''system-config-printer'' для проверки прочих параметров, тестовой печати, удаления некорректных предыдущих инсталляций. В частности, следует удалить авто определенный принтер с тем же (или схожим именем), но в качестве URI ссылающегося на usb:// устройство (правильный принтер ссылается на ccp:// устройство). == Взаимодействие с SELinux == Переводим SELinux в режим разрешающий (Permissive): <source lang="bash"> # setenforce 0 </source> Запускаем документ на печать. В /var/log/audit/audit.log (при работающем audit демоне, иначе в /var/log/messages) появляются сообщения о SELinux запретах (denials). Создаём для них модули согласно [[Создаем собственное правило SELinux на базе аудит сообщения]]. Как минимум нужны два пакета - для разрешения gs execmem и ccpd write. И возращаем SELinux в режим запретов (Enforcing): <source lang="bash"> # setenforce 1 </source> == Полезные советы == Для проверки состояния принтера удобно использовать графическую утилиту ''captstatusui''. Запускается она командой: <source lang="bash"> $ captstatusui -P LBP1120 </source> где LBP1120 - имя принтера зарегистрированного в подсистеме печати. [[Category:Установка и настройка]] [[Category:Драйвера]] 1cdda141ec979ebd730a113d752d5a8542e17b9a 436 435 2009-07-30T07:21:58Z VasileVsx 2 Network printing wikitext text/x-wiki {{Суперпользователь}} [http://software.canon-europe.com/software/0031118.asp?model= Страница загрузки] == Подготовка == Закачиваем драйвер с сайта Canon. Архив ''CAPTDRV180.tar.gz'' содержит два RPM пакета. Распаковываем его: <source lang="bash"> $ tar xf CAPTDRV180.tar.gz </source> убеждаемся что подсистема печати CUPS установлена: <source lang="bash"> # yum install cups </source> == Установка == Устанавливаем capt драйвер и перезагружаем сервис cups: <source lang="bash"> # cd CANON_UK/Driver/RPM/ # yum localinstall --nogpgcheck cndrvcups-capt-1.80-1.i386.rpm cndrvcups-common-1.80-1.i386.rpm # service cups restart </source> Регистрируем принтер принтер под именем ''LBP1120'' используя файл описания соответствующий нашей модели принтера - ''CNCUPSLBP1120CAPTK.ppd'': <source lang="bash"> # /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E </source> Другие файлы описания находим здесь: <source lang="bash"> # ls /usr/share/cups/model/ </source> Создаем FIFO каналы необходимые для связи демона ccpd и cups (не требуется для драйвера 1.80 и новее): <source lang="bash"> # mkdir /var/ccpd # mkfifo -m 666 /var/ccpd/fifo0 # mkfifo -m 666 /var/ccpd/fifo1 # mkfifo -m 666 /var/ccpd/fifo2 # mkfifo -m 666 /var/ccpd/fifo3 # mkfifo -m 666 /var/ccpd/fifo4 # mkfifo -m 666 /var/ccpd/fifo5 # mkfifo -m 666 /var/ccpd/fifo6 # mkfifo -m 666 /var/ccpd/fifo7 # chmod 666 /var/ccpd/fifo* </source> Регистрируем принтер в демоне ccpd и обеспечиваем его запуск при старте системы: <source lang="bash"> # /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0 # service ccpd start # ln -s /etc/init.d/ccpd /etc/rc5.d/S99ccpd </source> Теперь можно запустить графическую утилиту ''system-config-printer'' для проверки прочих параметров, тестовой печати, удаления некорректных предыдущих инсталляций. В частности, следует удалить авто определенный принтер с тем же (или схожим именем), но в качестве URI ссылающегося на usb:// устройство (правильный принтер ссылается на ccp:// устройство). == Взаимодействие с SELinux == Переводим SELinux в режим разрешающий (Permissive): <source lang="bash"> # setenforce 0 </source> Запускаем документ на печать. В /var/log/audit/audit.log (при работающем audit демоне, иначе в /var/log/messages) появляются сообщения о SELinux запретах (denials). Создаём для них модули согласно [[Создаем собственное правило SELinux на базе аудит сообщения]]. Как минимум нужны два пакета - для разрешения gs execmem и ccpd write. И возращаем SELinux в режим запретов (Enforcing): <source lang="bash"> # setenforce 1 </source> == Общий доступ к принтеру == Для возможности печати на наш принтер по сети с других рабочих станций, следует настроить CUPS и межсетевой экран. Запускаем ''system-config-printer'' (System->Administration->Printing, Печать, Tipărire), в нем меню Server->Settings... Включаем "Publish shared printers connected to this system", "Allow printing from the Internet". Не лишне проверить стоит ли флаг "Общий доступ" в свойствах нашего принтера. [[Fişier:system-config-printer_basic_settings.png]] Запускаем ''system-config-firewall'' (System->Administration->Firewall, Межсетевой экран, Paravan de protecție), и включаем доступ к IPP службам: [[Fişier:system-config-firewall_ipp_enable.png]] После нажатия Apply можно печатать. Для MS Windows клиентских систем, устанавливаем новый сетевой принтер по адресу http://192.168.xx.xx:631/printers/LBP1120 (подставив правильный IP адрес или сетевое имя нашего принт-сервера) и выбираем драйвер вручную из категории "Generic" - "MS Publisher Imagesetter" == Полезные советы == Для проверки состояния принтера удобно использовать графическую утилиту ''captstatusui''. Запускается она командой: <source lang="bash"> $ captstatusui -P LBP1120 </source> где LBP1120 - имя принтера зарегистрированного в подсистеме печати. [[Category:Установка и настройка]] [[Category:Драйвера]] b6184ef1f6cf5e148dc96dc1bc8135189a5d2e59 443 436 2009-08-03T08:46:04Z VasileVsx 2 advices wikitext text/x-wiki {{Суперпользователь}} [http://software.canon-europe.com/software/0031118.asp?model= Страница загрузки] == Подготовка == Закачиваем драйвер с сайта Canon. Архив ''CAPTDRV180.tar.gz'' содержит два RPM пакета. Распаковываем его: <source lang="bash"> $ tar xf CAPTDRV180.tar.gz </source> убеждаемся что подсистема печати CUPS установлена: <source lang="bash"> # yum install cups </source> == Установка == Устанавливаем capt драйвер и перезагружаем сервис cups: <source lang="bash"> # cd CANON_UK/Driver/RPM/ # yum localinstall --nogpgcheck cndrvcups-capt-1.80-1.i386.rpm cndrvcups-common-1.80-1.i386.rpm # service cups restart </source> Регистрируем принтер принтер под именем ''LBP1120'' используя файл описания соответствующий нашей модели принтера - ''CNCUPSLBP1120CAPTK.ppd'': <source lang="bash"> # /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E </source> Другие файлы описания находим здесь: <source lang="bash"> # ls /usr/share/cups/model/ </source> Создаем FIFO каналы необходимые для связи демона ccpd и cups (не требуется для драйвера 1.80 и новее): <source lang="bash"> # mkdir /var/ccpd # mkfifo -m 666 /var/ccpd/fifo0 # mkfifo -m 666 /var/ccpd/fifo1 # mkfifo -m 666 /var/ccpd/fifo2 # mkfifo -m 666 /var/ccpd/fifo3 # mkfifo -m 666 /var/ccpd/fifo4 # mkfifo -m 666 /var/ccpd/fifo5 # mkfifo -m 666 /var/ccpd/fifo6 # mkfifo -m 666 /var/ccpd/fifo7 # chmod 666 /var/ccpd/fifo* </source> Регистрируем принтер в демоне ccpd и обеспечиваем его запуск при старте системы: <source lang="bash"> # /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0 # service ccpd start # ln -s /etc/init.d/ccpd /etc/rc5.d/S99ccpd </source> Теперь можно запустить графическую утилиту ''system-config-printer'' для проверки прочих параметров, тестовой печати, удаления некорректных предыдущих инсталляций. В частности, следует удалить авто определенный принтер с тем же (или схожим именем), но в качестве URI ссылающегося на usb:// устройство (правильный принтер ссылается на ccp:// устройство). == Взаимодействие с SELinux == Переводим SELinux в режим разрешающий (Permissive): <source lang="bash"> # setenforce 0 </source> Запускаем документ на печать. В /var/log/audit/audit.log (при работающем audit демоне, иначе в /var/log/messages) появляются сообщения о SELinux запретах (denials). Создаём для них модули согласно [[Создаем собственное правило SELinux на базе аудит сообщения]]. Как минимум нужны два пакета - для разрешения gs execmem и ccpd write. И возращаем SELinux в режим запретов (Enforcing): <source lang="bash"> # setenforce 1 </source> == Общий доступ к принтеру == Для возможности печати на наш принтер по сети с других рабочих станций, следует настроить CUPS и межсетевой экран. Запускаем ''system-config-printer'' (System->Administration->Printing, Печать, Tipărire), в нем меню Server->Settings... Включаем "Publish shared printers connected to this system", "Allow printing from the Internet". Не лишне проверить стоит ли флаг "Общий доступ" в свойствах нашего принтера. [[Fişier:system-config-printer_basic_settings.png]] Запускаем ''system-config-firewall'' (System->Administration->Firewall, Межсетевой экран, Paravan de protecție), и включаем доступ к IPP службам: [[Fişier:system-config-firewall_ipp_enable.png]] После нажатия Apply можно печатать. Для MS Windows клиентских систем, устанавливаем новый сетевой принтер по адресу http://192.168.xx.xx:631/printers/LBP1120 (подставив правильный IP адрес или сетевое имя нашего принт-сервера) и выбираем драйвер вручную из категории "Generic" - "MS Publisher Imagesetter" == Полезные советы == Драйвер не идеален, и не очень хорошо обрабатывает ошибочные ситуации. Поэтому: * всегда подключайте принтер исправным USB-кабелем, обеспечивающем надёжное соединение. * включайте принтер до запуска системы. Для проверки состояния принтера удобно использовать графическую утилиту ''captstatusui''. Запускается она командой: <source lang="bash"> $ captstatusui -P LBP1120 </source> где LBP1120 - имя принтера зарегистрированного в подсистеме печати. [[Category:Установка и настройка]] [[Category:Драйвера]] c2e7909c57be286ba4525891f302f730c2f09156 444 443 2009-08-03T08:46:49Z VasileVsx 2 Language neutral file links wikitext text/x-wiki {{Суперпользователь}} [http://software.canon-europe.com/software/0031118.asp?model= Страница загрузки] == Подготовка == Закачиваем драйвер с сайта Canon. Архив ''CAPTDRV180.tar.gz'' содержит два RPM пакета. Распаковываем его: <source lang="bash"> $ tar xf CAPTDRV180.tar.gz </source> убеждаемся что подсистема печати CUPS установлена: <source lang="bash"> # yum install cups </source> == Установка == Устанавливаем capt драйвер и перезагружаем сервис cups: <source lang="bash"> # cd CANON_UK/Driver/RPM/ # yum localinstall --nogpgcheck cndrvcups-capt-1.80-1.i386.rpm cndrvcups-common-1.80-1.i386.rpm # service cups restart </source> Регистрируем принтер принтер под именем ''LBP1120'' используя файл описания соответствующий нашей модели принтера - ''CNCUPSLBP1120CAPTK.ppd'': <source lang="bash"> # /usr/sbin/lpadmin -p LBP1120 -m CNCUPSLBP1120CAPTK.ppd -v ccp:/var/ccpd/fifo0 -E </source> Другие файлы описания находим здесь: <source lang="bash"> # ls /usr/share/cups/model/ </source> Создаем FIFO каналы необходимые для связи демона ccpd и cups (не требуется для драйвера 1.80 и новее): <source lang="bash"> # mkdir /var/ccpd # mkfifo -m 666 /var/ccpd/fifo0 # mkfifo -m 666 /var/ccpd/fifo1 # mkfifo -m 666 /var/ccpd/fifo2 # mkfifo -m 666 /var/ccpd/fifo3 # mkfifo -m 666 /var/ccpd/fifo4 # mkfifo -m 666 /var/ccpd/fifo5 # mkfifo -m 666 /var/ccpd/fifo6 # mkfifo -m 666 /var/ccpd/fifo7 # chmod 666 /var/ccpd/fifo* </source> Регистрируем принтер в демоне ccpd и обеспечиваем его запуск при старте системы: <source lang="bash"> # /usr/sbin/ccpdadmin -p LBP1120 -o /dev/usb/lp0 # service ccpd start # ln -s /etc/init.d/ccpd /etc/rc5.d/S99ccpd </source> Теперь можно запустить графическую утилиту ''system-config-printer'' для проверки прочих параметров, тестовой печати, удаления некорректных предыдущих инсталляций. В частности, следует удалить авто определенный принтер с тем же (или схожим именем), но в качестве URI ссылающегося на usb:// устройство (правильный принтер ссылается на ccp:// устройство). == Взаимодействие с SELinux == Переводим SELinux в режим разрешающий (Permissive): <source lang="bash"> # setenforce 0 </source> Запускаем документ на печать. В /var/log/audit/audit.log (при работающем audit демоне, иначе в /var/log/messages) появляются сообщения о SELinux запретах (denials). Создаём для них модули согласно [[Создаем собственное правило SELinux на базе аудит сообщения]]. Как минимум нужны два пакета - для разрешения gs execmem и ccpd write. И возращаем SELinux в режим запретов (Enforcing): <source lang="bash"> # setenforce 1 </source> == Общий доступ к принтеру == Для возможности печати на наш принтер по сети с других рабочих станций, следует настроить CUPS и межсетевой экран. Запускаем ''system-config-printer'' (System->Administration->Printing, Печать, Tipărire), в нем меню Server->Settings... Включаем "Publish shared printers connected to this system", "Allow printing from the Internet". Не лишне проверить стоит ли флаг "Общий доступ" в свойствах нашего принтера. [[File:system-config-printer_basic_settings.png]] Запускаем ''system-config-firewall'' (System->Administration->Firewall, Межсетевой экран, Paravan de protecție), и включаем доступ к IPP службам: [[File:system-config-firewall_ipp_enable.png]] После нажатия Apply можно печатать. Для MS Windows клиентских систем, устанавливаем новый сетевой принтер по адресу http://192.168.xx.xx:631/printers/LBP1120 (подставив правильный IP адрес или сетевое имя нашего принт-сервера) и выбираем драйвер вручную из категории "Generic" - "MS Publisher Imagesetter" == Полезные советы == Драйвер не идеален, и не очень хорошо обрабатывает ошибочные ситуации. Поэтому: * всегда подключайте принтер исправным USB-кабелем, обеспечивающем надёжное соединение. * включайте принтер до запуска системы. Для проверки состояния принтера удобно использовать графическую утилиту ''captstatusui''. Запускается она командой: <source lang="bash"> $ captstatusui -P LBP1120 </source> где LBP1120 - имя принтера зарегистрированного в подсистеме печати. [[Category:Установка и настройка]] [[Category:Драйвера]] 2c08030d4d62400e90cf6e31b612d0caf6e7b8d7 Файл:System-config-printer basic settings.png 6 172 437 2009-07-30T07:22:58Z VasileVsx 2 system-config-printer - Basic settings dialogue wikitext text/x-wiki system-config-printer - Basic settings dialogue 0604cb8b19c327703b3fa063d688c675b7d6ce1e Файл:System-config-firewall ipp enable.png 6 173 438 2009-07-30T07:23:33Z VasileVsx 2 system-config-firewall - IPP protocol enable wikitext text/x-wiki system-config-firewall - IPP protocol enable f66751b7aef9dbfd27f351c9a86b5acf670cfc71 Установка и настройка драйвера для видео-карт фирмы NVIDIA 0 83 439 182 2009-07-30T07:30:08Z VasileVsx 2 Update to RPMFusion nonfree wikitext text/x-wiki {{Суперпользователь}} == Установка == 1. Добавление репозитория rpmfusion-nonfree, если ещё не добавлен. 2. Теперь следует определится с используемым драйвером в зависимости от установленной карты: * xorg-x11-drv-nvidia и kmod-nvidia для современных карт от Ge``Force6 и выше * xorg-x11-drv-nvidia-173xx и kmod-nvidia-173xx для карт Ge``Force FX (Ge``Force5) * xorg-x11-drv-nvidia-96xx и kmod-nvidia-96xx для карт от Ge``Force2 до Ge``Force4. 3. Устанавливаем требуемые пакеты: <source lang="bash"> # yum install xorg-x11-drv-nvidia kmod-nvidia </source> 4. Перегружаем X (Ctrl+Alt+Backspace) или всю систему если ускорение не появилось. 5. Запускаем в консоли <source lang="bash"> # glxinfo </source> и смотрим, чтобы "OpenGL vendor string" был "NVIDIA Corporation" 6. Запускаем <source lang="bash"> # glxinfo |grep direct </source> и смотрим, чтобы было: "direct rendering: Yes" 7. Запускаем <source lang="bash"> # glxgears </source> и смотрим, как шустро вращается кубик + считаем FPS. == Разгон == Начиная с версии 1.0-7664 закрытых драйверов появилась возможность управлять частотами видео-карты. Чтобы включить данную возможность необходимо добавить в <code>/etc/X11/xorg.conf</code> в секцию <code>"Device"</code> следующую опцию: <source lang="httpd"> Option "Coolbits" "1" </source> затем перезапустить Xorg. После этого будет доступен новый пункт меню в nvidia-settings. Как и в драйверах для систем Windows доступна автоматическое определение максимальных частот. Для сохранения настроек изменения частот необходимо создать копию файла <code>~/.nvidia-settings-rc</code> и добавить следующие пункты: <pre> GPUOverclockingState=1 GPU2DClockFreqs=500,400 GPU3DClockFreqs=500,400 </pre> Значения частот необходимо указывать, только те, что Вам подходят. При загрузке системы необходимо выполнить <source lang="bash"> $ nvidia-settings --config=~/.my-nv-settings-rc </source> где <code>.my-nv-settings-rc</code> - наш созданный конфигурационный файл, содержащий настройки частот. [[Category:Установка и настройка]] [[Category:Драйвера]] 64ff11250ca695dfa73eafa1592e100bb351b1f7 440 439 2009-07-30T08:39:55Z VasileVsx 2 Syntax fix for mediawiki. Ctrl-alt-backspace note wikitext text/x-wiki {{Суперпользователь}} == Установка == 1. Добавление репозитория rpmfusion-nonfree, если ещё не добавлен. 2. Теперь следует определится с используемым драйвером в зависимости от установленной карты: * xorg-x11-drv-nvidia и kmod-nvidia для современных карт от GeForce6 и выше * xorg-x11-drv-nvidia-173xx и kmod-nvidia-173xx для карт GeForce FX (GeForce5) * xorg-x11-drv-nvidia-96xx и kmod-nvidia-96xx для карт от GeForce2 до GeForce4. 3. Устанавливаем требуемые пакеты: <source lang="bash"> # yum install xorg-x11-drv-nvidia kmod-nvidia </source> 4. Перегружаем X-сервер выйдя из текущей сессии (или Ctrl+Alt+Backspace для Fedora до 11-й версии) или всю систему если ускорение не появилось. 5. Запускаем в консоли <source lang="bash"> # glxinfo </source> и смотрим, чтобы "OpenGL vendor string" был "NVIDIA Corporation" 6. Запускаем <source lang="bash"> # glxinfo |grep direct </source> и смотрим, чтобы было: "direct rendering: Yes" 7. Запускаем <source lang="bash"> # glxgears </source> и смотрим, как шустро вращается кубик + считаем FPS. == Разгон == Начиная с версии 1.0-7664 закрытых драйверов появилась возможность управлять частотами видео-карты. Чтобы включить данную возможность необходимо добавить в <code>/etc/X11/xorg.conf</code> в секцию <code>"Device"</code> следующую опцию: <source lang="httpd"> Option "Coolbits" "1" </source> затем перезапустить Xorg. После этого будет доступен новый пункт меню в nvidia-settings. Как и в драйверах для систем Windows доступна автоматическое определение максимальных частот. Для сохранения настроек изменения частот необходимо создать копию файла <code>~/.nvidia-settings-rc</code> и добавить следующие пункты: <pre> GPUOverclockingState=1 GPU2DClockFreqs=500,400 GPU3DClockFreqs=500,400 </pre> Значения частот необходимо указывать, только те, что Вам подходят. При загрузке системы необходимо выполнить <source lang="bash"> $ nvidia-settings --config=~/.my-nv-settings-rc </source> где <code>.my-nv-settings-rc</code> - наш созданный конфигурационный файл, содержащий настройки частот. [[Category:Установка и настройка]] [[Category:Драйвера]] c41b889f1faf4092088fa11c45d5a2496ae27662 Установка UVC и GSPCA драйверов Web-камер 0 52 441 134 2009-07-30T08:44:27Z VasileVsx 2 Outdated note wikitext text/x-wiki {{Суперпользователь}} '''Внимание:''' Нижеописанная процедура не актуальна для свежих версий дистрибутива. В зависимости от модели web-камеры, существует несколько способов заставить её работать под linux. == gspca == '''gspca''' - это драйвер для более, чем 240 моделей камер. Полный список поддерживаемых моделей можно найти [http://mxhaard.free.fr/spca5xx.html здесь]. Для установки необходим репозиторий '''Livna'''. Отключите камеру, затем установите следующий пакет и зависимости, которые он запросит: <source lang="bash"> # yum install gspca </source> теперь подключите web-камеру, и проверьте её работоспособность в каком-либо приложении. == uvc-linux == если для вашей камеры нет поддержки '''gspca''' - возможно, она есть в разрабатываемом в данный момент USB Video Class для Linux. Для начала - можно просмотреть [http://linux-uvc.berlios.de/#devices список известных устройств], однако и другие камеры, соответствующие спецификации UVC должны работать. Так что приступим к установке! {{Information|Пользователям Fedora 8 достаточно обновится до ядра 2.6.24.2-7 и выше. Новые ядра содержат все необходимые модули.}} Здесь всё сложнее, так как не существует готовых пакетов. Для начала, заходим под суперпользователем, т.к. скрипт установки зависит от переменной PATH <source lang="bash"> $ su - </source> нам понадобится несколько пакетов - поэтому установим их <source lang="bash"> # yum install kernel-devel gcc glibc-devel subversion </source> теперь - создаём временную директорию, и качаем в неё последнюю SVN версию драйвера <source lang="bash"> # mkdir linux-uvc && cd linux-uvc && svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk </source> собираем, и устанавливаем модуль ядра <source lang="bash"> # make -C trunk all install </source> на всякий случай, после установки, внедряем установленный модуль <source lang="bash"> # modprobe uvcvideo </source> Готово. Теперь можно проверить на каком-то приложении, поддерживающем v4l2 (Skype, Kopete,...) Ввиду того, что вышеприведённые действия нужно делать после каждого обновления ядра, можно пользоваться небольшим скриптом, автоматизирующим процесс: <source lang="bash"> #!/bin/bash # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 2>&1 exit 1 fi #check packages if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then echo "installing missing packages"; yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!" fi #create temp dir TEMP_DIR=/tmp/uvc-linux-$$ mkdir $TEMP_DIR && cd $TEMP_DIR && #get latest SVN source svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk && #install make -C trunk all install && echo "installed successfully" && #insert module modprobe uvcvideo #remove temp dir cd ../ rm -fr $TEMP_DIR </source> ---- Источники: * [http://liquidat.wordpress.com/2007/12/07/howto-logitech-quickcam-pro-9000-with-fedora-8/ liquidat.wordpress.com] * [http://linux-uvc.berlios.de/ linux-uvc.berlios.de] * [http://mxhaard.free.fr/ mxhaard.free.fr] [[ro:Instalare drivere UVC şi GSPCA pentru suport WebCam]] [[Category:Установка и настройка]] [[Category:Драйвера]] 39f6be432aba546f6f53ad3a51f1ec6d7792c21a Instalare drivere UVC şi GSPCA pentru suport WebCam 0 51 442 285 2009-07-30T08:45:31Z VasileVsx 2 outdated note wikitext text/x-wiki {{Superuser}} '''Atenție''': Informația de mai jos nu mai este actuală pentru versiuni recente a distribuției Fedora. Pentru a utiliza o cameră Web (în continuare WebCam) în Linux, trebuie, în dependenţă de model, de instalat: == gspca == '''gspca''' - un driver pentru o [http://mxhaard.free.fr/spca5xx.html mulţime de modele]. El este disponibil din repozitoriul '''Livna'''. Deconectaţi WebCam. Apoi executaţi: <source lang="bash"> # yum install gspca </source> acum conectaţi WebCam, şi încercaţi să rulati o aplicatie cu suport la V4L (V4L2). == uvc-linux == '''uvc-linux''' - alt driver pentru [http://linux-uvc.berlios.de/#devices dispozitive compatibile] USB Video Class. {{Information|Utilizatorilor Fedora 8 este destul doar de a înnoi kernel pînă la versiunea 2.6.24.2-7 sau mai nouă. Kernel'ul nou deja conţine toate modulele necesare.}} Pentru a compila driver'ul din surse vom avea nevoie de pachete: ''kernel-devel, gcc, glibc-devel, subversion'' <source lang="bash"> # yum install kernel-devel gcc glibc-devel subversion </source> Descarcam sursele driverului într'un director temporar: <source lang="bash"> # mkdir linux-uvc;cd linux-uvc; svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk </source> şi-l compilăm <source lang="bash"> # make -C trunk all install </source> Încărcăm modul kernel (driver) în memorie: <source lang="bash"> # modprobe uvcvideo </source> Dacă la ultima etapă au apărut mesaje de eroare, pentru o descriere mai detailată urmărim ieşirea comenzii <source lang="bash"> $ dmesg|tail </source> Testăm suport video în aplicaţie preferată (ex. Skype, Kopete, ..) Operaţiile de mai sus vor trebui repetate la fiecare înnoire versiune kernel. Pentru comoditate au fost organizate într'un script shell. Plasaţi următorul conţinut într'un fişier text: <source lang="bash"> #!/bin/bash # Make sure only root can run our script if [[ $EUID -ne 0 ]]; then echo "This script must be run as root" 2>&1 exit 1 fi #check packages if ! rpm -q kernel-devel gcc glibc-devel subversion make >/dev/null; then echo "installing missing packages"; yum -y install kernel-devel gcc glibc-devel subversion make && echo "...done!" fi #create temp dir TEMP_DIR=/tmp/uvc-linux-$$ mkdir $TEMP_DIR && cd $TEMP_DIR && #get latest SVN source svn checkout http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk && #install make -C trunk all install && echo "installed successfully" && #insert module modprobe uvcvideo #remove temp dir cd ../ rm -fr $TEMP_DIR </source> Îl rulăm cu drepturile utilizatorului '''root''': <source lang="bash"> # sh webcam_compile.sh </source> ---- Sursele: * [http://liquidat.wordpress.com/2007/12/07/howto-logitech-quickcam-pro-9000-with-fedora-8/ liquidat.wordpress.com] [[Category:Instalare şi configurare]] [[Category:Driver'e]] [[ru:Установка UVC и GSPCA драйверов Web-камер]] 252fac7b0bfdacd984678941ec948b0223bf71c8 Установка и настройка драйвера для видео-карт фирмы ATI 0 81 445 180 2009-08-03T09:11:59Z VasileVsx 2 compatibility wikitext text/x-wiki {{Суперпользователь}} '''Внимание:''' далее описаны 2 возможные процедуры установки драйвера. Используйте только одну из них (они взаимоисключаемы). Процедура 2 - использование пакетов от livna, более проста и рекомендуема к применению. == Проприетарные драйвера == [[Установка проприетарных драйверов от компании ATI (AMD)]]. == Совместимость == Для Fedora 11 в настоящий момент нет совместимых проприетарных драйверов от ATI/AMD. Точнее нет драйверов совместимых с ядрами 2.6.29 и новее. Современные видеокарты на базе чипов R6xx-R7xx (начиная от Radeon HD2400) поддерживаются драйвером xorg-x11-drv-catalyst (kmod-catalyst). Устаревшие видеокарты на базе чипов R3xx-R5xx (начиная с Radeon 9500 до Radeon X1950) работают с драйвером xorg-x11-drv-fglrx (kmod-fglrx), более не поддерживаемым AMD/ATI. Последняя версия - 9.3. Устаревшие видеокарты на базе чипов R2xx (начиная с Radeon 8500 до Radeon 9250) работают с проприетарным драйвером fglrx версии 6.8 (8.28.8), более не поддерживаемым AMD/ATI и не имеющего пакета в RPMFusion. Открытый драйвер xorg-x11-drv-radeon поддерживает всю линейку видеокарт AMD, но с различными ограничениями функциональности для разных семейств и отдельных чипсетов. См. [http://www.x.org/wiki/radeon Radeon@x.org] и ''man 4 radeon'' == Установка fglrx из RPMFusion-nonfree репозитория == 1. Добавление репозитория RPMFusion-nonfree, если ещё не добавлен. 2. Устанавливаем xorg-x11-drv-fglrx и kmod-fglrx. <source lang="bash"> # yum install xorg-x11-drv-fglrx kmod-fglrx </source> Если при обновлении выдает сообщение о конфликтах версий kmod-fglrx, то перед запуском предыдущей строки, удалите предыдущую версию kmod-fglrx, а затем запустите установку: <source lang="bash"> # rpm --nodeps -e kmod-fglrx # yum install kmod-fglrx </source> 3. Запускаем в консоли: <source lang="bash"> # init 3 </source> 4. Запускаем в косоли: <source lang="bash"> # fglrx-config-display enable </source> 5. Редактируем /etc/X11/xorg.conf, проверяем наличие следующих строк, если их нет, то добавляем: <source lang="httpd"> Section "Device" Driver "fglrx" EndSection Section "Extensions" Option "Composite" "Disable" EndSection Section "ServerFlags" Option "AIGLX" "off" EndSection </source> Если вы используете драйвер новее 8.42.3 то последние две секции (''Extensions'' и ''Server``Flags'') менять не нужно. Версия драйвера 8.42 и выше поддерживает AIGLX. Если чипсет компании Intel, то после строчки <code>Driver "fglrx"</code> добавляем <code>Option "~UseInternalAGPGART" "no"</code> в секции ''Section "Device"'' 6. Запускаем X в косоли: <source lang="bash"> # init 5 </source> 7. Проверяем работоспособность драйвера: <source lang="bash"> # fglrxinfo </source> и смотрим, чтобы "OpenGL vendor string" был "ATI Technologies Inc." 8. Запускаем <source lang="bash"> # glxinfo |grep direct </source> и смотрим, чтобы было: "direct rendering: Yes" 9. Запускаем <source lang="bash"> # fgl_glxgears </source> и смотрим, как шустро вращается кубик + считаем FPS. '''''Примечание:''''' Если при попытке подгрузить модуль fglrx выдаёт ошибку типа: <source lang="bash"> # modprobe fglrx FATAL: Error inserting fglrx (/lib/modules/2.6.11.231005/misc/fglrx.ko): Operation not permitted </source> значит ещё подгружен модуль radeon. Выгрузите его: <source lang="bash"> # modprobe -r radeon </source> а затем, снова загрузите fglrx: <source lang="bash"> # modprobe fglrx </source> Если что-то не получается - напишите в тему поддержки, в форуме или чате. При этом желательно указывать вывод следующих команд: <source lang="bash"> $ grep Driver /etc/X11/xorg.conf $ egrep EE\|WW /var/log/Xorg.0.log $ ldd /usr/bin/glxinfo $ LIBGL_DEBUG=verbose glxinfo |head -n 20 $ egrep fglrx\|radeon /proc/modules $ dmesg|egrep fglrx\|radeon </source> [[Category:Драйвера]] [[Category:Установка и настройка]] 9c471055e42a8cd047c5c838751576b2156a5042 447 445 2009-08-24T08:59:26Z VasileVsx 2 Catalyst 9.8 note wikitext text/x-wiki {{Суперпользователь}} '''Внимание:''' далее описаны 2 возможные процедуры установки драйвера. Используйте только одну из них (они взаимоисключаемы). Процедура 2 - использование пакетов от livna, более проста и рекомендуема к применению. == Проприетарные драйвера == [[Установка проприетарных драйверов от компании ATI (AMD)]]. == Совместимость == Современные видеокарты на базе чипов R6xx-R7xx (начиная от Radeon HD2400) поддерживаются драйвером xorg-x11-drv-catalyst (kmod-catalyst). Для Fedora 11 следует использовать kmod-catalyst не старее версии 9.8. Устаревшие видеокарты на базе чипов R3xx-R5xx (начиная с Radeon 9500 до Radeon X1950) работают с драйвером xorg-x11-drv-fglrx (kmod-fglrx), более не поддерживаемым AMD/ATI. Последняя версия - 9.3. Устаревшие видеокарты на базе чипов R2xx (начиная с Radeon 8500 до Radeon 9250) работают с проприетарным драйвером fglrx версии 6.8 (8.28.8), более не поддерживаемым AMD/ATI и не имеющего пакета в RPMFusion. Открытый драйвер xorg-x11-drv-radeon поддерживает всю линейку видеокарт AMD, но с различными ограничениями функциональности для разных семейств и отдельных чипсетов. См. [http://www.x.org/wiki/radeon Radeon@x.org] и ''man 4 radeon'' == Установка fglrx из RPMFusion-nonfree репозитория == 1. Добавление репозитория RPMFusion-nonfree, если ещё не добавлен. 2. Устанавливаем xorg-x11-drv-fglrx и kmod-fglrx. <source lang="bash"> # yum install xorg-x11-drv-fglrx kmod-fglrx </source> Если при обновлении выдает сообщение о конфликтах версий kmod-fglrx, то перед запуском предыдущей строки, удалите предыдущую версию kmod-fglrx, а затем запустите установку: <source lang="bash"> # rpm --nodeps -e kmod-fglrx # yum install kmod-fglrx </source> 3. Запускаем в консоли: <source lang="bash"> # init 3 </source> 4. Запускаем в косоли: <source lang="bash"> # fglrx-config-display enable </source> 5. Редактируем /etc/X11/xorg.conf, проверяем наличие следующих строк, если их нет, то добавляем: <source lang="httpd"> Section "Device" Driver "fglrx" EndSection Section "Extensions" Option "Composite" "Disable" EndSection Section "ServerFlags" Option "AIGLX" "off" EndSection </source> Если вы используете драйвер новее 8.42.3 то последние две секции (''Extensions'' и ''Server``Flags'') менять не нужно. Версия драйвера 8.42 и выше поддерживает AIGLX. Если чипсет компании Intel, то после строчки <code>Driver "fglrx"</code> добавляем <code>Option "~UseInternalAGPGART" "no"</code> в секции ''Section "Device"'' 6. Запускаем X в косоли: <source lang="bash"> # init 5 </source> 7. Проверяем работоспособность драйвера: <source lang="bash"> # fglrxinfo </source> и смотрим, чтобы "OpenGL vendor string" был "ATI Technologies Inc." 8. Запускаем <source lang="bash"> # glxinfo |grep direct </source> и смотрим, чтобы было: "direct rendering: Yes" 9. Запускаем <source lang="bash"> # fgl_glxgears </source> и смотрим, как шустро вращается кубик + считаем FPS. '''''Примечание:''''' Если при попытке подгрузить модуль fglrx выдаёт ошибку типа: <source lang="bash"> # modprobe fglrx FATAL: Error inserting fglrx (/lib/modules/2.6.11.231005/misc/fglrx.ko): Operation not permitted </source> значит ещё подгружен модуль radeon. Выгрузите его: <source lang="bash"> # modprobe -r radeon </source> а затем, снова загрузите fglrx: <source lang="bash"> # modprobe fglrx </source> Если что-то не получается - напишите в тему поддержки, в форуме или чате. При этом желательно указывать вывод следующих команд: <source lang="bash"> $ grep Driver /etc/X11/xorg.conf $ egrep EE\|WW /var/log/Xorg.0.log $ ldd /usr/bin/glxinfo $ LIBGL_DEBUG=verbose glxinfo |head -n 20 $ egrep fglrx\|radeon /proc/modules $ dmesg|egrep fglrx\|radeon </source> [[Category:Драйвера]] [[Category:Установка и настройка]] b0e709d3a0a6db0d631d0be2e864e3261a83dde5 Обсуждение участника:SergeuSikalov 3 174 446 2009-08-06T12:41:54Z SergeuSikalov 56 Участник: SergeuSikalov wikitext text/x-wiki == Участник: SergeuSikalov == [[Участник:SergeuSikalov]] Личные данные: '''Город:''' Воронеж. '''Образование:''' Среднее специальное. '''Область интересов:''' Компьюторсчик. '''Родился:''' 12 марта 1984 года. '''Место работы:''' Продажа мобильных телефонов. '''Интересы:''' Тусовки, девушки, клубы. '''О себе:''' Люблю девушек, помешан на мобилах... '''E-mail:''' ssikalov@yandex.ru. ---- '''Самые мобильные телефоны Nokia:''' [http://www.nokiae-90.ru Nokia E90]| [http://www.nokian-78.ru Nokia N78]| [http://www.nokian-80.ru Nokia N80]| [http://www.nokian-82.ru Nokia N82]| [http://www.nokian-93.ru Nokia N93] fafaccb12b4abd096591e92e2e1d41a5b9cbbbfb FAQ/ro 0 112 448 355 2009-10-21T08:38:45Z 87.248.191.50 0 sudo password timout wikitext text/x-wiki {{Superuser}} === Primii paşi === ==== Cum poţi afla data/ora locală? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ date </source> ==== Cum poţ afla versiune kernel şi sistem de operare? ==== Pentru a afla versiune kernel, executaţi următoarea comandă în consolă: <source lang="bash"> $ uname -a </source> Detalii <code>man uname</code> Pentru a afla versiune sistem de operare, cunoaştem cîteva metode: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch <source> Sau dacă este instalat pachetul ''redhat-lsb'': <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> ==== Cît timp a lucrat SO (Sistem de operare)? ==== Executaţi următoarea comandă în consolă: <source lang="bash"> $ uptime </source> ==== Cum poate fi setat Nautilus să deschidă directorul nou în aceeaşi fereastră? ==== Activaţi opţiunea ''System->Preferinţe->Administrare fişiere->Comportament->Deschide întotdeauna în fereastră de navigare'' ==== Cum de setat altă combinaţie taste de schimbare limbaj întroducere (En-Ro, En-Ru)? ==== Dacă utilizaţi KDE, dezactivaţi motorul control tastatură incorporat. Apoi edităm fişierul <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ro(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> şi restartăm server X. În acest caz avem modificare layout tastatură cu combinatia ''Ctrl-Shift'', şi două limbaje - engleză şi română compatibilă tastatură Microsoft. Altă variantă: română pentru programatori (diferă de layout ''us'' prin faptul că caracterele cu diacritice se introduc combinând tasta ALT dreaptă şi analogului latin al caracterului: exemplu AltGr-t pentru 'ţ', AltGr-s pentru 'ş', AltGr-q pentru 'â'), rusă, modificare - tasta WinKey dreată. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> ==== Cum de lansat o comandă sau aplicaţie sin consolă cu drepturile utilizatorului root (Superutilizator) ==== În consolă executaţi <source lang="bash"> $ su - </source> şi introduceţi parolă utilizator ''root''. Sau indicînd comandă imediat <source lang="bash"> $ su - -c 'command' </source> unde ''command'' - comanda sau aplicaţie. O alternativă ar fi setarea sistemului ''sudo'' <code>man sudo</code> se recomandă pentru documentare. Ca rezultat s-ar putea executa un set anumit, sau toate comenzile cu drepturile utilizatorului ''root'', introducind sau nu parola prefixînd comanda necesară cu ''sudo'', spre exemplu <source lang="bash"> $ sudo /sbin/fdisk -l </source> Exemplu de configurare ''sudo'' pentru utilizatorul ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> noile regului pentru utilizator vor fi active cu următoarea intrare sa în sistem (nu şi în cazul dacă utilizatorul posedă deja grupa ''wheel''). ==== Cum de mărit intervalul de valabilitate a parolei la utilizare sudo ==== Edităm /etc/sudoers. Preferabil cu utilitar standard - visudo. Adăugăm parametrul timestamp: <source lang="bash"> Defaults timestamp_timeout=30 </source> În exemplu dat, 30 este valoare interval valabilitate parolă în minute. Putem seta aceasta valoare numai pentru un singur utilizator: <source lang="bash"> User_Alias MYSELF = username Defaults:MYSELF timestamp_timeout=60 </source> ==== Cum de activat masă de lucru stil 3D ? ==== Fedora Core 5 şi mai noi suporta efecte 3D pentru manager de ferestre prin intermediul tehnologii ''AIGLX''. Iniţial ne asigurăm că placa video/driverul utilizat [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 suportă AIGLX]. Pentru lansare ''compiz'' ca manager de ferestre activati opţiunea ''System->Preferinţe->Aspect->Desktop Effects->Enable Desktop Effects'' . De asemenea puteţi instala pachetul ''compiz-fusion'', care suportă setul extins de efecte. Doar instalaţi metapachetul ce corespunde mediului de lucru utilizat: <source lang="bash"> # yum install compiz-gnome ccsm </source> sau <source lang="bash"> # yum install compiz-kde ccsm </source> Apoi îl lansati din meniul ''Aplicaţii''. ==== Unde pot fi găsite programe (pachete) pentru Fedora? ==== O mulţime de programe pot fi găsite în repozitorii standard: Fedora Everything (versiuni mai noi de Fedora 7) şi [http://fedoraproject.org/wiki/Extras Fedora Extras] (versiuni mai vechi de Fedora 7). De asemenea în Internet pot fi găsite o mulţime de repozitorii neoficiale. Printre cele mai populare se numără: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] O listă mai completă o găsiti pe pagina proiectului [http://rpmfusion.org/FedoraThirdPartyRepos RPMFusion]. În aceste repozitorii veţi găsi multe pachete adiţionale care nu pot fi incluse în repozitorii standard, dar sînt compatibile cu acestea. Există motoare de căutare pe pachete ''RPM'' utilizate în sisteme RedHat/Fedora: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] ==== Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? ==== Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> ==== Cum de setat adresa serverului proxy utilizat? ==== În mediu ''GNOME'' din meniul "Sistem->Preferinţe->Internet şi reţea->Proxy reţea". Sau în caz general din consolă, adăugaţi în fişier profil shell <code>~/.bash_profile</code> rîndurile: <source lang="cfc"> http_proxy=http://proxy:3128 export http_proxy </source> sau <source lang="cfc"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> La următoarea întrare în sistem setările vor fi active. Atenţie: unele aplicaţii au metode proprii de a defini serverul proxy utilizat. De exemplu ''yum'' cere înregistrare tip <source lang="cfc"> proxy=http://proxy:3128 </source> în fişierul său de configuraţie. ==== Cum de lansat comanda cu anumite variabile împrejurării dezactivate (env)? ==== Pentru dezactivarea unei variabile, ex. http_proxy, executăm construcţia tip: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> unde <code>[CMD]</code> - este comanda necesară. ==== Cum poate fi instalat Gecko pentru wine ==== 1. Descărcăm versiune recentă wine_gecko.cab de pe [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net] în dosarul <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Dezarhivăm cu ajutorul cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Reîncărcăm wine: <source lang="bash"> $ wineboot -r </source> ==== Cum poate fi redenumită o grupă de volume LVM ==== Pentru redenumirea LVM Group sistemului activ ne încărcăm de pe alt sistem care nu va folosi acest grup, spre exemplu Fedora LiveCD sau Fedora Install în mod ''rescue''. În ultimul caz ignorăm propunera de a monta sistemele de fisiere existente. Executăm comenzile în consolă: 1. Rulăm consola lvm: <source lang="bash"> # lvm </source> 2. Verificăm vizibilitatea grupelor: <source lang="bash"> lvm> vgdisplay </source> 3. Dezactivăm grupele active: <source lang="bash"> lvm> vgchange -a n </source> 4. şi redenumim: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Activăm grupele: <source lang="bash"> lvm> vgchange -a y </source> 6. Părăsim consola lvm: <source lang="bash"> lvm> exit </source> '''''Atenţie:''' după redenumirea, este necesar de a corecta înregistrările afectate din /etc/fstab şi de a crea din nou initrd din dosarul /boot indicând parametrul --fstab='' <source lang="bash"> # mkinitrd --fstab='' /boot/initrd-2.6.25-1.fc9.x86_64.img 2.6.25-1.fc9.x86_64 </source> === Rezolvare probleme tip === ==== rpm se blochează la toate operaţiile de la utilizatorul root. Sub utilizatorul neprivilegiat lucrează corect ==== Posibilă cauză - eronarea bazei de date RPM. În consolă executăm <source lang="bash"> # rpm --rebuilddb </source> dacă nu va ajuta, încercăm: <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> ==== Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? ==== Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Итак. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> ==== Cum poate fi schimbat nume host propriu după instalarea sistemului? ==== Edităm fişierul /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> ==== Cum de accesat resurse reţea Samba (Windows shares)? ==== Dacă cunoaştem numele complet a resursei executăm comanda (cu drepturile utilizatorulu ''root''): <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Directorul /mnt/smb trebuie creat preventiv. Pentru demontare utilizăm <code>umount.cifs</code> Pentru accesare uşoară a resurselor reţelei locale fără autentificare putem utiliza ''fusesmb'': <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Deoarce ''fusesmb'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> ==== Cum de accesat un sistem de fişiere tip FAT32? ==== Executăm comanda: <source lang="bash"> # mount -t vfat /dev/sdaX /mnt/disk_fat -o quiet </source> Directorul ''/mnt/disk_fat'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> ==== Cum de accesat sistem de fişiere tip NTFS? ==== Pentru access citire/scriere utilizăm pachetul ''ntfs-3g''. Se instalează standard (în majoriatea cazurilor pachetul dat deja va fi instalat): <source lang="bash"> # yum install ntfs-3g </source> Executăm comanda: <source lang="bash"> # mount -t ntfs /dev/sdaX /mnt/disk_ntfs -o force </source> Directorul ''/mnt/disk_ntfs'' trebuie creat preventiv. Pentru utilizarea ulterioară se recomandă adăugarea acestui sistem de fişiere în lista ''/etc/fstab''. Exemplu: <source lang="bash"> /dev/sda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Versiunile vechi nu permiteau montarea autmată la pornire sistem cu protecţie SELinux în mod Enforce. Pentru trecerea în mod permisiv se poate utiliza comanda: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Deoarce ''ntfs-3g'' utilizează librăria ''fuse'', este necesar de adăugat la lista grupelor aditionale a utilizatorului grupa ''fuse'' (pentru versiuni Fedora mai vechi de Fedora 9): <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Există şi o alternativă mai uşoară - instalăm şi rulăm utilitarul ''ntfs-config'': <source lang="bash"> # yum install ntfs-config </source> ==== Cum de dezactivat suport IPv6? ==== Executăm următorii paşi (cu drepturile utilizatorului root). 1. Edităm fişierul /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Dezactivăm firewall ipv6: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Edităm /etc/hosts. Eliminăm înregistrările ce se încem cu <code>::1</code> 4. Restartăm. ==== При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? ==== Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> ==== Как восстановить KMenu по -умолчанию? ==== Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu ==== Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? ==== Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. ==== Cum să restabilesc parola utilizatorului root? ==== Parola criptată nu poate fi aflată, dar poate fi schimbată pe altă. Pentru aceasta ne trebuie mod Singleuser (init 1). Restartăm computer și în Grub (bootloader, încărcător inițial ce permite alegerea sistemului ce va fi încărcat) apăsăm tasta 'e' peste varianta de încărcare. Apare lista comenzilor. Trecem cu taste cursor pe rîndul ce pornește cu '''kernel''', și apasăm din nou 'e'. În mod de editare adăugăm la sfîrșitul rîndului '''1''' după un spațiu. Apăsăm Enter, apoi 'b'. Sistemul se va încărca în mod text de bază (init 1). Initial sistem de fișiere este montat numai pentru citire. Trecem în mod citire scriere cu comanda: <code>mount -o rw,remount /</code> Apoi utilizăm comanda standard: <code>passwd</code>. Restartăm: <code>sync;reboot</code> ==== Dacă aplicațiile grafice nu pot fi pornite cu drepturile utilizatorului root? ==== Dacă la lansare de la utilizator <code>root</code> observați în terminal ceva asemănător cu <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> Atunci adăugați utilizatorul root (sau alt utilizator dacă este necesitate) în lista utilizatorilor cu drept de conectare la X11 server: <source lang="bash"> $ xhost si:localuser:root </source> ==== Schimbare set de caractere implicit serverului MySQL ==== Standard serverul MySQL utilizează set de caractere <code>latin1_swedish_ci</code>, ceea ce crează uneori probleme pentru scripturi imperfecte. Pentru soluţionare edităm fişierul /etc/my.cnf, rubrica <code>[mysqld]</code>: <source lang="cfc"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Software non-nativ === ==== Cum de lansat 1С:Бухгалтерия? ==== Pentru lucrul în mod multiutilizator este necesar de utilizat [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft] (non-free software). Fedora include pachetul wine care de asemenea poae lansa 1С:Бухгалтерия. Versiunile 8.0 şi 8.1 sînt compatibile cu Wine standard din distribuţie. Începînd cu versiunea 8.1 este disponibil clasterul nativ pe Linux cu support PostgreSQL. === Util === ==== Cum de redenumit set de fişiere dintr-o listă de nume în altă? ==== Exemplu: avem 20 fisiere video în director avi/, şi 20 fişiere cu subtitrări în directorul sub/. Atunci: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> ==== При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. ==== Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> ==== MPlayer (qemu) ругается на RTC, сбита синхронизация. ==== Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> ==== При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? ==== Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. ==== Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. ==== Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от IceCast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. ==== Cum de creat o imagine ISO9660 a unui DataCD sau DVD? ==== Utilizăm comanda standard '''dd'''. Sintaxa este simplă - indicăm fişiere de intrare şi ieşire ca parametrii {{{if=}}} (de intrare) şi {{{of=}}} (de ieşire). Exemplu creare imagine ISO CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Exemplu creare imagine DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Notă:''''' parametrul ''conv=noerror,sync'' este necesar la copierea unui mediu cu errori. '''dd''' nu se va opri la erori de citire, inserând date nule în locul sectorului eronat. ==== Cum de operat cu conţinutul imaginii ISO a unui CD/DVD? ==== Fişierul ISO9660 poate fi montat cu comanda. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> unde <code>dvd_cd.iso</code> - fişier ISO, <code>/media/iso</code> - directorul unde va fi accesat (trebuie creat preventiv). Există şi instrumente grafice: isomaster, AcetoneISO, şi de consolă: fuseiso, nrg2iso care permit operarea imaginilor ISO9660 utilizatorilor neprivelegiaţi. ==== Cum de ascuns Audacious în zona de notificare (tray)? ==== Activaţi pluginul general ''Status Icon''. Întră in componenţa standard versiunilor recente ''Audacious''. ==== Cum de copiat un disc AudioCD/VideoCD? ==== Comanda ''dd'' nu poate fi utilizată în asemenea cazuri. Trebuie utilizat pachetul cdrdao. 1. Cream fisier imagine <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> vor fi create 2 fişiere: data.bin şi file.toc 2. Înregistrăm disc copie din fişiere imagine <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> parametrul ''--speed'' indică viteza de înscriere. ==== Modul multiutilizator în screen ==== Este necesar dacă o sesiune să fie accesibilă pentru mai mulţi utilizatori în mod concurent. '''screen'' implicit activează în modul unui singur utilizator - numai utilizatorul care a activat sesiunea poate să se conecteze la dînsa. Pentru mod multiutilizator executăm paşii. În director acasă a utilizatorului ce va deţine sesiunea creăm fişierul <code>.screenrc</code> şi-l completăm: <pre> multiuser on addacl <user> </pre> unde <code><user></code> - utilizatorul, ce va avea access la această sesiune screen. Mai mulţi utilizatori pot fi adăugaţi separîndu-i numele prin virgulă. Activăm ''setuid'' bitul pe executabilul screen: <source lang="bash"> # chmod +s /usr/bin/screen </source> Lansăm sesiunea: <source lang="bash"> $ screen -dmS session01 </source> Acum utilizatorii enumeraţi în <code>.screenrc</code> se pot conecta prin comanda: <source lang="bash"> $ screen -x <screen_user>/session01 </source> unde <code><screen_user></code> - nume utilizator ce deţine sesiunea. ==== Cum de modificat adresa MAC pentru o interfaţă Ethrenet? ==== Pentru a atribui temporar interfeţei cu numele eth4 adresa 00:2E:13:A1:81:77 executăm una din comenzile: <source lang="bash"> # /sbin/ip link set dev eth4 address 00:2E:13:A1:81:77 # /sbin/ifconfig eth4 hw ether 00:2E:13:A1:81:77 </source> Pentru seta adresa automat la pornire sistem, în fişierul /etc/sysconfig/networking/devices/ifcfg-eth4 adaugăm rîndul: <source lang="bash"> MACADDR=00:2E:13:A1:81:77 </source> [[ru:FAQ]] d5230ae274c24fa9239ed5af2fd843e39b8ba668 FAQ 0 110 449 393 2009-10-21T08:42:22Z 87.248.191.50 0 sudo timestamp interval change wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. ==== Как изменить время действия пароля запрашиваемого командой sudo ==== Правим /etc/sudoers. Желательно стандартной утилитой - visudo. Добавляем параметр timestamp: <source lang="bash"> Defaults timestamp_timeout=30 </source> В примере, 30 - значение интервала в минутах. Можно задать это значение только для определенного пользователя: <source lang="bash"> User_Alias MYSELF = username Defaults:MYSELF timestamp_timeout=60 </source> === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rpm -f /var/lib/rpm/__db.??? </source> или просто выполняем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Финализировать сессии на оптическом носителе === Если нужно финализировать диск с мультисесией, то необходимо выполнить команду: <source lang="bash"> # growisofs -M /dev/dvd=/dev/zero </source> где /dev/dvd - пишущий привод. Вместо /dev/dvd может быть /dev/cdrom. == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо приобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. === Восcтанавливаем chmod === Стандартный chmod для директорий 755, а для файлов 644. Восстановление происходит в 2 этапа, сначала для директорий, а затем для файлов. <source lang="bash"> # find /dir -type d -print -exec chmod 755 {} \; # find /dir -type f -print -exec chmod 644 {} \; </source> [[ro:FAQ/ro]] 04556b11a00af586cd8529d8c0e0900e5cb64f77 Управление и мониторинг UPS 0 68 450 165 2009-10-21T17:53:57Z 93.189.150.181 0 spell check wikitext text/x-wiki {{Суперпользователь}} В данном обзоре мы рассмотрим настройку и конфигурацию NUT (Network UPS Tools). == Установка == 1. Проверьте, установлены ли у Вас нужные компоненты: nut и nut-client. 2. Если нет, то установим: <source lang="bash"> # yum install nut nut-client </source> == Настройка == 1. Редактируем файл /etc/ups/ups.conf. <source lang="ini"> [myupsname] driver = mydriver port = /dev/ttyS1 desc = "Workstation" </source> где <code>myupsname</code> - название UPS (любое), <code>driver</code> - [[#Таблица поддерживаемых UPS и драйверов|используемый драйвер]], <code>port</code> - последовательный порт (COM1 - /dev/ttyS0, COM2 - /dev/ttyS1, и т.д.) к которому подключён UPS, <code>desc</code> - описание. 2. Запускаем драйвер: <source lang="bash"> # upsdrvctl start </source> 3. Результат должен быть похожий: <pre> Network UPS Tools - UPS driver controller 1.5.12 Network UPS Tools - Belkin Smart protocol driver 0.21 (1.5.12) Detected F6C525-SER on /dev/cuaa0 </pre> 4. Теперь необходимо настроить сервер, который собирает информацию с драйвера для клиента. Редактируем /etc/ups/upsd.conf <pre> ACL all 0.0.0.0/0 ACL localhost 127.0.0.1/32 ACCEPT localhost REJECT all </pre> задаём правила для подключения клиента. Выше правило разрешающее подключение клиента только с локального хоста. Кстати, NUT позволяет мониторить UPS удалённо. 5. Запускаем сервер: <source lang="bash"> # upsd </source> 6. Результат должен быть похожим на: <pre> Network UPS Tools upsd 1.5.12 Connected to UPS [belkin]: belkin-cuaa0 Synchronizing...done </pre> 7. Теперь запустим клиент и проверим данные: <source lang="bash"> # upsc myupsname@localhost ups.status </source> где <code>myupsname</code> - название UPS, которое было указано в /etc/ups/ups.conf 8. Если UPS нормально работает, то должно вывести '''OL''' (On-Line) 9. Для получения полной информации запустите: <source lang="bash"> # upsc myupsname@localhost </source> 10. Есть возможность установить даже пароль на просмотр информации. Подробнее в <code>man</code> == Автоматическое выключение при низком уровне заряда аккумулятора. == Для автоматического выключения необходимо сделать ещё несколько настроек. 1. Редактируем /etc/ups/upsd.users. Добавляем пользователя и пароль. <source lang="ini"> [monuser] password = mypass allowfrom = localhost upsmon master </source> 2. Редактируем /etc/ups/upsmon.conf <source lang="ini"> MONITOR myupsname@localhost 1 monuser mypass master </source> где, <code>myupsname</code> - название UPS, которое было указано в /etc/ups/ups.conf, <code>monuser mypass</code> - имя пользователя и пароль, который указали в /etc/ups/upsd.users <pre> POWERDOWNFLAG /etc/killpower </pre> 3. Перегружаем сервер: <source lang="bash"> # upsd -c reload </source> 4. Для запуска мониторинга при старте включаем запуск сервиса ups: <source lang="bash"> # chkconfig --level 35 ups on # sed -i 's/MODEL=NONE/MODEL=upsdrvctl/g' /etc/sysconfig/ups </source> == Настройка для Fedora 8 == В Fedora 8 настройка производится, как описано выше, за исключением, что в <code>/etc/sysconfig/ups</code> необходимо указывать модель (драйвер), например: <pre> MODEL=megatec </pre> == Таблица поддерживаемых UPS и драйверов == [http://www.networkupstools.org/compat/stable.html Подробный список]. == Графические клиенты == * [http://www.knut.noveradsl.cz/knutclient/ KNutClient] * [http://rudd-o.com/projects/ups-monitor/ UPS monitor] [[Category:Установка и настройка]] [[Category:Настройка системы]] 441bb7b1ebf87d2415768c92749fc82d9be4d716 Все что Вы хотели знать о SSH 0 111 451 431 2009-10-31T15:36:10Z 94.232.8.205 0 /* Слишком много ключей? */ решение проблемы wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключ кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то <s>Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться.</s> переносим ключи в отдельную директорию, и вызываем явно с помощью IdentityFile <source lang="bash"> Host portal HostName portal.zone.local IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 </source> ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port:destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> === SSH-клиенты и оболочки === * GNU/Linux: [http://utils.kde.org/projects/kdessh/ kdessh], lsh-client, [http://www.openssh.com/ openssh-client], [http://putty.org.ru/ PuTTY] * MS Windows и Windows NT: [http://putty.org.ru/ PuTTY], [http://www.vandyke.com/products/securecrt/ SecureCRT], ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD * MS Windows Mobile: [http://www.pocketputty.net/ PocketPuTTy], mToken, sshCE, PocketTTY, OpenSSH, PocketConsole * Mac OS: NiftyTelnet SSH * Symbian OS: [http://s2putty.sourceforge.net/ PuTTY] * Java: MindTerm, AppGate Security Server * J2ME: MidpSSH * iPhone: [http://www.instantcocoa.com/products/pTerm/ pTerm], i-SSH, ssh (в комплекте с Terminal) [[Category:Статьи]] 729c0f64b7f780995d41afab125c66785e3e4020 452 451 2009-10-31T15:37:57Z 94.232.8.205 0 /* Слишком много ключей? */ wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключ кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то <s>Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться.</s> переносим ключи в отдельную директорию, и вызываем явно с помощью IdentityFile <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config Host portal HostName portal.zone.local IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 </source> ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port:destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> === SSH-клиенты и оболочки === * GNU/Linux: [http://utils.kde.org/projects/kdessh/ kdessh], lsh-client, [http://www.openssh.com/ openssh-client], [http://putty.org.ru/ PuTTY] * MS Windows и Windows NT: [http://putty.org.ru/ PuTTY], [http://www.vandyke.com/products/securecrt/ SecureCRT], ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD * MS Windows Mobile: [http://www.pocketputty.net/ PocketPuTTy], mToken, sshCE, PocketTTY, OpenSSH, PocketConsole * Mac OS: NiftyTelnet SSH * Symbian OS: [http://s2putty.sourceforge.net/ PuTTY] * Java: MindTerm, AppGate Security Server * J2ME: MidpSSH * iPhone: [http://www.instantcocoa.com/products/pTerm/ pTerm], i-SSH, ssh (в комплекте с Terminal) [[Category:Статьи]] cf7ea36d205b48a02032b3c9f3236a836beacd54 453 452 2009-10-31T18:02:08Z 94.232.8.205 0 /* Слишком много ключей? */ тонкости wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключ кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то <s>Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться.</s> переносим ключи в отдельную директорию, и вызываем явно с помощью IdentityFile <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config Host portal HostName portal.zone.local IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 </source> в случае использования ssh-agent приходится прибегать к дополнительным ухищрениям, ибо он всё равно норовит использовать все известные ему ключи. <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config Host * # правила применяемые ко всем без исключения хостам HashKnownHosts yes # дополнительная мера безопасности, хеширует адреса хостов в known_hosts Host from="!portal.zone.local,10.1.12.1" # Явно указываем известные нам хосты PreferredAuthentications keyboard-interactive # Тип авторизации парольная. Host portal HostName portal.zone.local IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 Host gw HostName 10.1.12.1 IdentityFile ~/.ssh/tmp/id_rsa_4096_gw </source> подробности в man ssh_config ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port:destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> === SSH-клиенты и оболочки === * GNU/Linux: [http://utils.kde.org/projects/kdessh/ kdessh], lsh-client, [http://www.openssh.com/ openssh-client], [http://putty.org.ru/ PuTTY] * MS Windows и Windows NT: [http://putty.org.ru/ PuTTY], [http://www.vandyke.com/products/securecrt/ SecureCRT], ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD * MS Windows Mobile: [http://www.pocketputty.net/ PocketPuTTy], mToken, sshCE, PocketTTY, OpenSSH, PocketConsole * Mac OS: NiftyTelnet SSH * Symbian OS: [http://s2putty.sourceforge.net/ PuTTY] * Java: MindTerm, AppGate Security Server * J2ME: MidpSSH * iPhone: [http://www.instantcocoa.com/products/pTerm/ pTerm], i-SSH, ssh (в комплекте с Terminal) [[Category:Статьи]] 577a025df8ba782072a324cd3acfde0deb599f7d 454 453 2009-10-31T21:45:24Z 94.232.8.205 0 /* Слишком много ключей? */ поправки wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключ кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то <s>Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться.</s> переносим ключи в отдельную директорию, и вызываем явно с помощью IdentityFile <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config Host portal HostName portal.zone.local IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 </source> в случае использования ssh-agent приходится прибегать к дополнительным ухищрениям, ибо он всё равно норовит использовать все известные ему ключи. <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config HashKnownHosts yes RSAAuthentication no Host portal HostName portal.zone.local PubkeyAuthentication yes IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 Host gw HostName 10.1.12.1 PubkeyAuthentication yes IdentityFile ~/.ssh/tmp/id_rsa_4096_gw Host * PasswordAuthentication yes PubkeyAuthentication no </source> подробности в man ssh_config ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port:destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> === SSH-клиенты и оболочки === * GNU/Linux: [http://utils.kde.org/projects/kdessh/ kdessh], lsh-client, [http://www.openssh.com/ openssh-client], [http://putty.org.ru/ PuTTY] * MS Windows и Windows NT: [http://putty.org.ru/ PuTTY], [http://www.vandyke.com/products/securecrt/ SecureCRT], ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD * MS Windows Mobile: [http://www.pocketputty.net/ PocketPuTTy], mToken, sshCE, PocketTTY, OpenSSH, PocketConsole * Mac OS: NiftyTelnet SSH * Symbian OS: [http://s2putty.sourceforge.net/ PuTTY] * Java: MindTerm, AppGate Security Server * J2ME: MidpSSH * iPhone: [http://www.instantcocoa.com/products/pTerm/ pTerm], i-SSH, ssh (в комплекте с Terminal) [[Category:Статьи]] 5b20a9d1b0034b8d7b3de10bbd3c38e5390e4688 479 454 2010-05-04T20:17:57Z 82.117.252.143 0 /* Port Forwarding Cheat Sheet */ wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключ кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то <s>Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться.</s> переносим ключи в отдельную директорию, и вызываем явно с помощью IdentityFile <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config Host portal HostName portal.zone.local IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 </source> в случае использования ssh-agent приходится прибегать к дополнительным ухищрениям, ибо он всё равно норовит использовать все известные ему ключи. <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config HashKnownHosts yes RSAAuthentication no Host portal HostName portal.zone.local PubkeyAuthentication yes IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 Host gw HostName 10.1.12.1 PubkeyAuthentication yes IdentityFile ~/.ssh/tmp/id_rsa_4096_gw Host * PasswordAuthentication yes PubkeyAuthentication no </source> подробности в man ssh_config ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> === SSH-клиенты и оболочки === * GNU/Linux: [http://utils.kde.org/projects/kdessh/ kdessh], lsh-client, [http://www.openssh.com/ openssh-client], [http://putty.org.ru/ PuTTY] * MS Windows и Windows NT: [http://putty.org.ru/ PuTTY], [http://www.vandyke.com/products/securecrt/ SecureCRT], ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD * MS Windows Mobile: [http://www.pocketputty.net/ PocketPuTTy], mToken, sshCE, PocketTTY, OpenSSH, PocketConsole * Mac OS: NiftyTelnet SSH * Symbian OS: [http://s2putty.sourceforge.net/ PuTTY] * Java: MindTerm, AppGate Security Server * J2ME: MidpSSH * iPhone: [http://www.instantcocoa.com/products/pTerm/ pTerm], i-SSH, ssh (в комплекте с Terminal) [[Category:Статьи]] 235f42281a29134c9172ff88cf7180e5b6ecaf55 Copy HDD Contents between computers 0 175 455 2009-11-02T18:04:39Z Jekader 4 исходный вариант статьи wikitext text/x-wiki Иногда возникает необходимость скопировать содержимое раздела жёсткого диска с одного компьютера на другой. Один из простых способов - использовать стандартные утилиты tar и nc, присутствующие на любом LiveCD. =Исходные данные= Итак, для осуществления задачи нам нужно два компьютера с жёсткими дисками и оптическими приводами, соединённые в локальную сеть. =Загрузка= Включаем оба компьютера, загружаемся с LiveCD. Если в сети есть DHCP сервер, сеть поднимается автоматически. Если нет - вручную настраиваем сеть. Проверяем, чтобы компьютеры могли пинговать друг друга =Подготовка и проверка= Заходим в систему под суперпользователем. Для ubuntu это делается командой "sudo su -". монтируем на первом компьютере раздел, который предстоит скопировать, а на втором - пустой раздел, на который будут записаны данные: <source lang="bash"> mkdir /mnt/hd mount /dev/sdaX /mnt/hd </source> где X - номер раздела. Проверяем по отдельности команды: <source lang="bash"> tar --version nc -h pv -V </source> Последняя утилита расшифровывается как Pipe Viewer, и необязательно - она лишь показывает, сколько данных передано. Если есть интернет - доустанавливаем её (aptitude install pv, yum install pv, etc...) =Первый компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> tar -cpsf - . | pv -b | nc -l -p 3333 </source> *если нет pv <source lang="bash"> tar -cpsfv - . | pv -b | nc -l -p 3333 </source> =Второй компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> nc 192.168.10.101 3333 | pv -b | tar -xpsf - </source> *если нет pv <source lang="bash"> nc 192.168.10.101 3333 | tar -xpsfv - </source> =Готово= Теперь ждём, пока завершится копирование. =Ссылки= http://www.linuxjournal.com/content/copying-filesystem-between-computers [[Category:Статьи]] f542f33a7be6f04adeec2548f9d5634b395c5a14 456 455 2009-11-02T18:05:31Z Jekader 4 /* Подготовка и проверка */ wikitext text/x-wiki Иногда возникает необходимость скопировать содержимое раздела жёсткого диска с одного компьютера на другой. Один из простых способов - использовать стандартные утилиты tar и nc, присутствующие на любом LiveCD. =Исходные данные= Итак, для осуществления задачи нам нужно два компьютера с жёсткими дисками и оптическими приводами, соединённые в локальную сеть. =Загрузка= Включаем оба компьютера, загружаемся с LiveCD. Если в сети есть DHCP сервер, сеть поднимается автоматически. Если нет - вручную настраиваем сеть. Проверяем, чтобы компьютеры могли пинговать друг друга =Подготовка и проверка= Заходим в систему под суперпользователем. Для ubuntu это делается командой "sudo su -". монтируем на первом компьютере раздел, который предстоит скопировать, а на втором - пустой раздел, на который будут записаны данные: <source lang="bash"> mkdir /mnt/hd mount /dev/sdaX /mnt/hd </source> где X - номер раздела. Проверяем по отдельности команды: <source lang="bash"> tar --version nc -h pv -V </source> Последняя утилита расшифровывается как Pipe Viewer, и необязательна - она лишь показывает, сколько данных передано. Если есть интернет - доустанавливаем её (aptitude install pv, yum install pv, etc...) =Первый компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> tar -cpsf - . | pv -b | nc -l -p 3333 </source> *если нет pv <source lang="bash"> tar -cpsfv - . | pv -b | nc -l -p 3333 </source> =Второй компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> nc 192.168.10.101 3333 | pv -b | tar -xpsf - </source> *если нет pv <source lang="bash"> nc 192.168.10.101 3333 | tar -xpsfv - </source> =Готово= Теперь ждём, пока завершится копирование. =Ссылки= http://www.linuxjournal.com/content/copying-filesystem-between-computers [[Category:Статьи]] db79b35d2f30bc580d3dea6185ab79e857dd9003 457 456 2009-11-02T18:07:29Z Jekader 4 /* Второй компьютер */ wikitext text/x-wiki Иногда возникает необходимость скопировать содержимое раздела жёсткого диска с одного компьютера на другой. Один из простых способов - использовать стандартные утилиты tar и nc, присутствующие на любом LiveCD. =Исходные данные= Итак, для осуществления задачи нам нужно два компьютера с жёсткими дисками и оптическими приводами, соединённые в локальную сеть. =Загрузка= Включаем оба компьютера, загружаемся с LiveCD. Если в сети есть DHCP сервер, сеть поднимается автоматически. Если нет - вручную настраиваем сеть. Проверяем, чтобы компьютеры могли пинговать друг друга =Подготовка и проверка= Заходим в систему под суперпользователем. Для ubuntu это делается командой "sudo su -". монтируем на первом компьютере раздел, который предстоит скопировать, а на втором - пустой раздел, на который будут записаны данные: <source lang="bash"> mkdir /mnt/hd mount /dev/sdaX /mnt/hd </source> где X - номер раздела. Проверяем по отдельности команды: <source lang="bash"> tar --version nc -h pv -V </source> Последняя утилита расшифровывается как Pipe Viewer, и необязательна - она лишь показывает, сколько данных передано. Если есть интернет - доустанавливаем её (aptitude install pv, yum install pv, etc...) =Первый компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> tar -cpsf - . | pv -b | nc -l -p 3333 </source> *если нет pv <source lang="bash"> tar -cpsfv - . | pv -b | nc -l -p 3333 </source> =Второй компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> nc 192.168.10.101 3333 | pv -b | tar -xpsf - </source> *если нет pv <source lang="bash"> nc 192.168.10.101 3333 | tar -xpsfv - </source> В первом случае будет показываться, сколько данных передано. Во втором - будут показываться названия всех передаваемых файлов. =Готово= Теперь ждём, пока завершится копирование. =Ссылки= http://www.linuxjournal.com/content/copying-filesystem-between-computers [[Category:Статьи]] f54adb0e905d304ffe3b28dd69fb7593968663a5 458 457 2009-11-02T18:07:42Z Jekader 4 /* Первый компьютер */ wikitext text/x-wiki Иногда возникает необходимость скопировать содержимое раздела жёсткого диска с одного компьютера на другой. Один из простых способов - использовать стандартные утилиты tar и nc, присутствующие на любом LiveCD. =Исходные данные= Итак, для осуществления задачи нам нужно два компьютера с жёсткими дисками и оптическими приводами, соединённые в локальную сеть. =Загрузка= Включаем оба компьютера, загружаемся с LiveCD. Если в сети есть DHCP сервер, сеть поднимается автоматически. Если нет - вручную настраиваем сеть. Проверяем, чтобы компьютеры могли пинговать друг друга =Подготовка и проверка= Заходим в систему под суперпользователем. Для ubuntu это делается командой "sudo su -". монтируем на первом компьютере раздел, который предстоит скопировать, а на втором - пустой раздел, на который будут записаны данные: <source lang="bash"> mkdir /mnt/hd mount /dev/sdaX /mnt/hd </source> где X - номер раздела. Проверяем по отдельности команды: <source lang="bash"> tar --version nc -h pv -V </source> Последняя утилита расшифровывается как Pipe Viewer, и необязательна - она лишь показывает, сколько данных передано. Если есть интернет - доустанавливаем её (aptitude install pv, yum install pv, etc...) =Первый компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> tar -cpsf - . | pv -b | nc -l -p 3333 </source> *если нет pv <source lang="bash"> tar -cpsfv - . | pv -b | nc -l -p 3333 </source> В первом случае будет показываться, сколько данных передано. Во втором - будут показываться названия всех передаваемых файлов. =Второй компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> nc 192.168.10.101 3333 | pv -b | tar -xpsf - </source> *если нет pv <source lang="bash"> nc 192.168.10.101 3333 | tar -xpsfv - </source> В первом случае будет показываться, сколько данных передано. Во втором - будут показываться названия всех передаваемых файлов. =Готово= Теперь ждём, пока завершится копирование. =Ссылки= http://www.linuxjournal.com/content/copying-filesystem-between-computers [[Category:Статьи]] bbe9fbc5b0ef8000200347feb51f9c095079855f 459 458 2009-11-02T18:08:04Z Jekader 4 /* Второй компьютер */ wikitext text/x-wiki Иногда возникает необходимость скопировать содержимое раздела жёсткого диска с одного компьютера на другой. Один из простых способов - использовать стандартные утилиты tar и nc, присутствующие на любом LiveCD. =Исходные данные= Итак, для осуществления задачи нам нужно два компьютера с жёсткими дисками и оптическими приводами, соединённые в локальную сеть. =Загрузка= Включаем оба компьютера, загружаемся с LiveCD. Если в сети есть DHCP сервер, сеть поднимается автоматически. Если нет - вручную настраиваем сеть. Проверяем, чтобы компьютеры могли пинговать друг друга =Подготовка и проверка= Заходим в систему под суперпользователем. Для ubuntu это делается командой "sudo su -". монтируем на первом компьютере раздел, который предстоит скопировать, а на втором - пустой раздел, на который будут записаны данные: <source lang="bash"> mkdir /mnt/hd mount /dev/sdaX /mnt/hd </source> где X - номер раздела. Проверяем по отдельности команды: <source lang="bash"> tar --version nc -h pv -V </source> Последняя утилита расшифровывается как Pipe Viewer, и необязательна - она лишь показывает, сколько данных передано. Если есть интернет - доустанавливаем её (aptitude install pv, yum install pv, etc...) =Первый компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> tar -cpsf - . | pv -b | nc -l -p 3333 </source> *если нет pv <source lang="bash"> tar -cpsfv - . | pv -b | nc -l -p 3333 </source> В первом случае будет показываться, сколько данных передано. Во втором - будут показываться названия всех передаваемых файлов. =Второй компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> nc 192.168.10.101 3333 | pv -b | tar -xpsf - </source> *если нет pv <source lang="bash"> nc 192.168.10.101 3333 | tar -xpsfv - </source> В первом случае будет показываться, сколько данных получено. Во втором - будут показываться названия всех получаемых файлов. =Готово= Теперь ждём, пока завершится копирование. =Ссылки= http://www.linuxjournal.com/content/copying-filesystem-between-computers [[Category:Статьи]] 86236b9cbd9944659f294be2640dfe551ce9a3bd 460 459 2009-11-02T18:11:49Z Jekader 4 /* Первый компьютер */ wikitext text/x-wiki Иногда возникает необходимость скопировать содержимое раздела жёсткого диска с одного компьютера на другой. Один из простых способов - использовать стандартные утилиты tar и nc, присутствующие на любом LiveCD. =Исходные данные= Итак, для осуществления задачи нам нужно два компьютера с жёсткими дисками и оптическими приводами, соединённые в локальную сеть. =Загрузка= Включаем оба компьютера, загружаемся с LiveCD. Если в сети есть DHCP сервер, сеть поднимается автоматически. Если нет - вручную настраиваем сеть. Проверяем, чтобы компьютеры могли пинговать друг друга =Подготовка и проверка= Заходим в систему под суперпользователем. Для ubuntu это делается командой "sudo su -". монтируем на первом компьютере раздел, который предстоит скопировать, а на втором - пустой раздел, на который будут записаны данные: <source lang="bash"> mkdir /mnt/hd mount /dev/sdaX /mnt/hd </source> где X - номер раздела. Проверяем по отдельности команды: <source lang="bash"> tar --version nc -h pv -V </source> Последняя утилита расшифровывается как Pipe Viewer, и необязательна - она лишь показывает, сколько данных передано. Если есть интернет - доустанавливаем её (aptitude install pv, yum install pv, etc...) =Первый компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> tar -cpsf - . | pv -b | nc -l -p 3333 </source> *если нет pv <source lang="bash"> tar -cpsfv - . | nc -l -p 3333 </source> В первом случае будет показываться, сколько данных передано. Во втором - будут показываться названия всех передаваемых файлов. =Второй компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> nc 192.168.10.101 3333 | pv -b | tar -xpsf - </source> *если нет pv <source lang="bash"> nc 192.168.10.101 3333 | tar -xpsfv - </source> В первом случае будет показываться, сколько данных получено. Во втором - будут показываться названия всех получаемых файлов. =Готово= Теперь ждём, пока завершится копирование. =Ссылки= http://www.linuxjournal.com/content/copying-filesystem-between-computers [[Category:Статьи]] 248196fa9b446da5d73be12e4d18b0343841ac1d 461 460 2009-11-02T18:12:54Z Jekader 4 /* Второй компьютер */ wikitext text/x-wiki Иногда возникает необходимость скопировать содержимое раздела жёсткого диска с одного компьютера на другой. Один из простых способов - использовать стандартные утилиты tar и nc, присутствующие на любом LiveCD. =Исходные данные= Итак, для осуществления задачи нам нужно два компьютера с жёсткими дисками и оптическими приводами, соединённые в локальную сеть. =Загрузка= Включаем оба компьютера, загружаемся с LiveCD. Если в сети есть DHCP сервер, сеть поднимается автоматически. Если нет - вручную настраиваем сеть. Проверяем, чтобы компьютеры могли пинговать друг друга =Подготовка и проверка= Заходим в систему под суперпользователем. Для ubuntu это делается командой "sudo su -". монтируем на первом компьютере раздел, который предстоит скопировать, а на втором - пустой раздел, на который будут записаны данные: <source lang="bash"> mkdir /mnt/hd mount /dev/sdaX /mnt/hd </source> где X - номер раздела. Проверяем по отдельности команды: <source lang="bash"> tar --version nc -h pv -V </source> Последняя утилита расшифровывается как Pipe Viewer, и необязательна - она лишь показывает, сколько данных передано. Если есть интернет - доустанавливаем её (aptitude install pv, yum install pv, etc...) =Первый компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> tar -cpsf - . | pv -b | nc -l -p 3333 </source> *если нет pv <source lang="bash"> tar -cpsfv - . | nc -l -p 3333 </source> В первом случае будет показываться, сколько данных передано. Во втором - будут показываться названия всех передаваемых файлов. =Второй компьютер= заходим в директорию с подмонтированным разделом <source lang="bash"> cd /mnt/hd </source> запускаем копирование данных *если есть pv <source lang="bash"> nc 192.168.10.101 3333 | pv -b | tar -xpsf - </source> *если нет pv <source lang="bash"> nc 192.168.10.101 3333 | tar -xpsfv - </source> Где 192.168.10.101 заменить на IP адрес первого компьютера. В первом случае будет показываться, сколько данных получено. Во втором - будут показываться названия всех получаемых файлов. =Готово= Теперь ждём, пока завершится копирование. =Ссылки= http://www.linuxjournal.com/content/copying-filesystem-between-computers [[Category:Статьи]] cd14b8494cc4a7aa04987f9baa240f2030fd086e Repozitori:Fedora 12 0 176 462 2009-11-14T16:30:41Z VasileVsx 2 Pagină nouă: {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 12 (Everything)'', ''Fedora 12 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' ... wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 12 (Everything)'', ''Fedora 12 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 12 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 12 (architecturile i386 şi x86_64) * ''RussianFedora'' pentru Fedora 12 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 12 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-12'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-12.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat}} [[Category:Repozitorii|Fedora 12]] [[ru:Репозиторий:Fedora 12]] 19d1cb9e13cfb51a15254e4d448d63d2425c7ddd Репозиторий:Fedora 12 0 177 463 2009-11-14T16:32:02Z VasileVsx 2 Pagină nouă: {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 12 (Everything)'',... wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 12 (Everything)'', ''Fedora 12 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 12 (i386 и x86_64 архитектуры) * ''RPMFusion'' для Fedora 12 (i386 и x86_64 архитектуры) * ''RussianFedora'' для Fedora 12 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 12 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с нашим сайтом установите пакет ''fedoramd-release-12'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-12.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 12]] [[ro:Repozitori:Fedora 12]] 3bee579136fe0083032270115830c1c401faca4c Участник:VasileVsx 2 144 464 429 2009-11-23T10:45:02Z VasileVsx 2 X11vnc+xinetd wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm opțiunea -v - verbose ==== Cum de nu lăsat "urme" ==== Fie avem access la sudo pe un computer. Avem nevoie ca unele operații a noastre să rămînă private. Pentru ca alt administrator să nu afle istoricul comenzilor administrative: 1. utilizăm sudo numai pentru a porni bash shell, și nu pentru a executa comenzi propriu zise. Toate comenzile lansate cu sudo nimeresc în jurnale de sistem. Deci utilizăm <code>sudo su -</code> pentru a ridica nivelul de privilegii 2. Toate comenzile bash (shell implicit în majoritatea sistemelor linux) se salvează în fișierul ~/.bash_history. Îl putem șterge, dar la ieșire el va fi recreat cu istoricul păstrat în memorie operativă. Deci pentru a ascunde lista comenzilor din sesiunea curentă noi "ucidem" shell current (mai exact - părintele său, comanda su) ;) <code>kill $PPID</code> ==== F10 upgrade ==== (14:52:53) skid: кстати ты случайно не знаешь что случилось с лэйаутами в f10 ? (14:53:13) skid: переключение на разные языки не очень работает нормально (15:11:53) vchelban@gmail.com/WorkFA0EBD46: Znaiu, vsio znaiu :D (15:12:04) vchelban@gmail.com/WorkFA0EBD46: Ia je v nei jivu s F10 Beta (15:12:39) vchelban@gmail.com/WorkFA0EBD46: Ti navernoe kinul svoi xorg.conf starii (15:13:00) vchelban@gmail.com/WorkFA0EBD46: Tak vot - diver klaviaturi nujno ispolizovati evdev (15:13:07) vchelban@gmail.com/WorkFA0EBD46: a ne keyboard, ne kbd (15:13:37) vchelban@gmail.com/WorkFA0EBD46: I voobshe - 4asto fedora 10 neploho rabotaet voobshe bez xorg.conf (15:13:56) vchelban@gmail.com/WorkFA0EBD46: Takje esli u tebia bil ~/.Xmodmap - lu4she eko poka otkliu4iti === Plymouth theme/plugin change === # yum install plymouth-system-theme # plymouth-set-default-theme charge # /usr/libexec/plymouth/plymouth-update-initrd http://morefedora.blogspot.com/2009/05/personalizzare-il-boot-con-plymouth.html === Prelucrăm colecția de fotografii === Pas 1: Sortare. Utilizăm gthumb pentru a separa fotografii cu calitate inferioară, private, destinate pentru publicare online,... etc. Cum? Editare->Preferințe->Taste Rapide. pentru, spre exemplu, taste 7,8,9 setăm 3 comenzi: mkdir -p %p/web/ ; ln %f %p/web/ mkdir -p %p/prelucrare/ ; mv %f %p/prelucrare/ mkdir -p %p/private/ ; mv %f %p/private/ navigăm prin dosar (b,n) și cu taste 7,8,9 marcăm fotografii spre publicare, prelucrare, private. Obținem în dosar web/ o grupă de fotografii pt publicare. aplicăm cu gthumb operația de scalare a imaginii (pt ai micsora dimensiunile) - Unelte /Scalează imagini. Imaini rezultante vor poseda același nume, dar nu și TAG'uri EXIF. le copiem cu ajutorul exiftool: cd dosar_web_scalat; for i in *.jpg; do exiftool -TagsFromFile ../web/$i -all:all $i;done http://pario.no/2008/09/02/rename-files-by-wildcard-pattern-and-correct-the-exif-timestamp-metadata/ ==== Cum de monitorizat sesiunea unui PC ==== yum install x11vnc xinetd cat <<EOF >/etc/xinetd.d/vnc-server # default: off service vnc-server { disable = no flags = IPv6 socket_type = stream wait = no user = green server = /usr/bin/x11vnc server_args = -display :0 -inetd -q -o /var/tmp/x11vnc.log -prog /usr/bin/x11vnc -shared log_on_failure += USERID } acum asigurăm access la distanță la TCP port 5900 20d8ef2e14adb587a258de28ecd5b364a000a475 465 464 2010-01-30T20:28:57Z VasileVsx 2 test wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm opțiunea -v - verbose ==== Cum de nu lăsat "urme" ==== Fie avem access la sudo pe un computer. Avem nevoie ca unele operații a noastre să rămînă private. Pentru ca alt administrator să nu afle istoricul comenzilor administrative: 1. utilizăm sudo numai pentru a porni bash shell, și nu pentru a executa comenzi propriu zise. Toate comenzile lansate cu sudo nimeresc în jurnale de sistem. Deci utilizăm <code>sudo su -</code> pentru a ridica nivelul de privilegii 2. Toate comenzile bash (shell implicit în majoritatea sistemelor linux) se salvează în fișierul ~/.bash_history. Îl putem șterge, dar la ieșire el va fi recreat cu istoricul păstrat în memorie operativă. Deci pentru a ascunde lista comenzilor din sesiunea curentă noi "ucidem" shell current (mai exact - părintele său, comanda su) ;) <code>kill $PPID</code> ==== F10 upgrade ==== (14:52:53) skid: кстати ты случайно не знаешь что случилось с лэйаутами в f10 ? (14:53:13) skid: переключение на разные языки не очень работает нормально (15:11:53) vchelban@gmail.com/WorkFA0EBD46: Znaiu, vsio znaiu :D (15:12:04) vchelban@gmail.com/WorkFA0EBD46: Ia je v nei jivu s F10 Beta (15:12:39) vchelban@gmail.com/WorkFA0EBD46: Ti navernoe kinul svoi xorg.conf starii (15:13:00) vchelban@gmail.com/WorkFA0EBD46: Tak vot - diver klaviaturi nujno ispolizovati evdev (15:13:07) vchelban@gmail.com/WorkFA0EBD46: a ne keyboard, ne kbd (15:13:37) vchelban@gmail.com/WorkFA0EBD46: I voobshe - 4asto fedora 10 neploho rabotaet voobshe bez xorg.conf (15:13:56) vchelban@gmail.com/WorkFA0EBD46: Takje esli u tebia bil ~/.Xmodmap - lu4she eko poka otkliu4iti === Plymouth theme/plugin change === # yum install plymouth-system-theme # plymouth-set-default-theme charge # /usr/libexec/plymouth/plymouth-update-initrd http://morefedora.blogspot.com/2009/05/personalizzare-il-boot-con-plymouth.html === Prelucrăm colecția de fotografii === Pas 1: Sortare. Utilizăm gthumb pentru a separa fotografii cu calitate inferioară, private, destinate pentru publicare online,... etc. Cum? Editare->Preferințe->Taste Rapide. pentru, spre exemplu, taste 7,8,9 setăm 3 comenzi: mkdir -p %p/web/ ; ln %f %p/web/ mkdir -p %p/prelucrare/ ; mv %f %p/prelucrare/ mkdir -p %p/private/ ; mv %f %p/private/ navigăm prin dosar (b,n) și cu taste 7,8,9 marcăm fotografii spre publicare, prelucrare, private. Obținem în dosar web/ o grupă de fotografii pt publicare. aplicăm cu gthumb operația de scalare a imaginii (pt ai micsora dimensiunile) - Unelte /Scalează imagini. Imaini rezultante vor poseda același nume, dar nu și TAG'uri EXIF. le copiem cu ajutorul exiftool: cd dosar_web_scalat; for i in *.jpg; do exiftool -TagsFromFile ../web/$i -all:all $i;done http://pario.no/2008/09/02/rename-files-by-wildcard-pattern-and-correct-the-exif-timestamp-metadata/ ==== Cum de monitorizat sesiunea unui PC ==== yum install x11vnc xinetd cat <<EOF >/etc/xinetd.d/vnc-server # default: off service vnc-server { disable = no flags = IPv6 socket_type = stream wait = no user = green server = /usr/bin/x11vnc server_args = -display :0 -inetd -q -o /var/tmp/x11vnc.log -prog /usr/bin/x11vnc -shared log_on_failure += USERID } acum asigurăm access la distanță la TCP port 5900 test/test e71cbbfc2491a1f5d0cc318d25c3b245debf54dd 466 465 2010-01-31T13:29:40Z VasileVsx 2 test2 wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm opțiunea -v - verbose ==== Cum de nu lăsat "urme" ==== Fie avem access la sudo pe un computer. Avem nevoie ca unele operații a noastre să rămînă private. Pentru ca alt administrator să nu afle istoricul comenzilor administrative: 1. utilizăm sudo numai pentru a porni bash shell, și nu pentru a executa comenzi propriu zise. Toate comenzile lansate cu sudo nimeresc în jurnale de sistem. Deci utilizăm <code>sudo su -</code> pentru a ridica nivelul de privilegii 2. Toate comenzile bash (shell implicit în majoritatea sistemelor linux) se salvează în fișierul ~/.bash_history. Îl putem șterge, dar la ieșire el va fi recreat cu istoricul păstrat în memorie operativă. Deci pentru a ascunde lista comenzilor din sesiunea curentă noi "ucidem" shell current (mai exact - părintele său, comanda su) ;) <code>kill $PPID</code> ==== F10 upgrade ==== (14:52:53) skid: кстати ты случайно не знаешь что случилось с лэйаутами в f10 ? (14:53:13) skid: переключение на разные языки не очень работает нормально (15:11:53) vchelban@gmail.com/WorkFA0EBD46: Znaiu, vsio znaiu :D (15:12:04) vchelban@gmail.com/WorkFA0EBD46: Ia je v nei jivu s F10 Beta (15:12:39) vchelban@gmail.com/WorkFA0EBD46: Ti navernoe kinul svoi xorg.conf starii (15:13:00) vchelban@gmail.com/WorkFA0EBD46: Tak vot - diver klaviaturi nujno ispolizovati evdev (15:13:07) vchelban@gmail.com/WorkFA0EBD46: a ne keyboard, ne kbd (15:13:37) vchelban@gmail.com/WorkFA0EBD46: I voobshe - 4asto fedora 10 neploho rabotaet voobshe bez xorg.conf (15:13:56) vchelban@gmail.com/WorkFA0EBD46: Takje esli u tebia bil ~/.Xmodmap - lu4she eko poka otkliu4iti === Plymouth theme/plugin change === # yum install plymouth-system-theme # plymouth-set-default-theme charge # /usr/libexec/plymouth/plymouth-update-initrd http://morefedora.blogspot.com/2009/05/personalizzare-il-boot-con-plymouth.html === Prelucrăm colecția de fotografii === Pas 1: Sortare. Utilizăm gthumb pentru a separa fotografii cu calitate inferioară, private, destinate pentru publicare online,... etc. Cum? Editare->Preferințe->Taste Rapide. pentru, spre exemplu, taste 7,8,9 setăm 3 comenzi: mkdir -p %p/web/ ; ln %f %p/web/ mkdir -p %p/prelucrare/ ; mv %f %p/prelucrare/ mkdir -p %p/private/ ; mv %f %p/private/ navigăm prin dosar (b,n) și cu taste 7,8,9 marcăm fotografii spre publicare, prelucrare, private. Obținem în dosar web/ o grupă de fotografii pt publicare. aplicăm cu gthumb operația de scalare a imaginii (pt ai micsora dimensiunile) - Unelte /Scalează imagini. Imaini rezultante vor poseda același nume, dar nu și TAG'uri EXIF. le copiem cu ajutorul exiftool: cd dosar_web_scalat; for i in *.jpg; do exiftool -TagsFromFile ../web/$i -all:all $i;done http://pario.no/2008/09/02/rename-files-by-wildcard-pattern-and-correct-the-exif-timestamp-metadata/ ==== Cum de monitorizat sesiunea unui PC ==== yum install x11vnc xinetd cat <<EOF >/etc/xinetd.d/vnc-server # default: off service vnc-server { disable = no flags = IPv6 socket_type = stream wait = no user = green server = /usr/bin/x11vnc server_args = -display :0 -inetd -q -o /var/tmp/x11vnc.log -prog /usr/bin/x11vnc -shared log_on_failure += USERID } acum asigurăm access la distanță la TCP port 5900 test/test test2/test2 f0436eac5e2e9a94f90f909206db818cd2d3b96f Репозиторий:openSUSE 0 178 467 2010-02-17T09:46:01Z VasileVsx 2 Новая страница: «{{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''openSUS…» wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''openSUSE'' 11.1, 11.2 для i386 и x86_64 архитектур * ''openSUSE updates'' 10.3, 11.0, 11.1, 11.2, 11.3 для i386 и x86_64 архитектур {{Information|Базовые репозитории openSUSE нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|openSUSE]] [[ro:Repozitori:openSUSE]] 410819a04f3cea66c46ed192cdc8f18e208e12da 471 467 2010-02-17T09:49:51Z VasileVsx 2 переименовал «[[Репозиторий:OpenSUSE]]» в «[[Репозиторий:openSUSE]]»:&#32;fix distro name wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''openSUSE'' 11.1, 11.2 для i386 и x86_64 архитектур * ''openSUSE updates'' 10.3, 11.0, 11.1, 11.2, 11.3 для i386 и x86_64 архитектур {{Information|Базовые репозитории openSUSE нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|openSUSE]] [[ro:Repozitori:openSUSE]] 410819a04f3cea66c46ed192cdc8f18e208e12da 474 471 2010-02-17T19:22:03Z VasileVsx 2 Links wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''openSUSE'' 11.1, 11.2 для i386 и x86_64 архитектур * ''openSUSE updates'' 10.3, 11.0, 11.1, 11.2, 11.3 для i386 и x86_64 архитектур {{Information|Базовые репозитории openSUSE нашего зеркала вам доступны без дополнительных настроек.}} [http://mirrors.opensuse.org/ Список зеркал openSUSE] [http://repo.fedora.md/mirrors/opensuse/ openSUSE зеркало на нашем сервере] [http://repo.fedora.md/mirrors/opensuse/distribution/openSUSE-current/iso/ ISO образы текущей версии openSUSE] [[Category:Репозитории|openSUSE]] [[ro:Repozitori:openSUSE]] 5927e7221e46a264de2f86a7d16b00ca90995286 Repozitori:openSUSE 0 179 468 2010-02-17T09:47:41Z VasileVsx 2 Новая страница: «{{}Superuser} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''openSUSE'' 11.1, 11.2 pentru architecturile i386 şi x86_64 * ''openSUSE updates…» wikitext text/x-wiki {{}Superuser} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''openSUSE'' 11.1, 11.2 pentru architecturile i386 şi x86_64 * ''openSUSE updates'' 10.3, 11.0, 11.1, 11.2, 11.3 pentru architecturile i386 şi x86_64 {{Information|Repozitoriile openSUSE standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [[Category:Repozitorii|openSUSE]] [[ro:Репозиторий:openSUSE]] a6e0cdbff522959f25a959b8d69232b91dddaf9f 469 468 2010-02-17T09:47:50Z VasileVsx 2 wikitext text/x-wiki {Superuser} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''openSUSE'' 11.1, 11.2 pentru architecturile i386 şi x86_64 * ''openSUSE updates'' 10.3, 11.0, 11.1, 11.2, 11.3 pentru architecturile i386 şi x86_64 {{Information|Repozitoriile openSUSE standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [[Category:Repozitorii|openSUSE]] [[ro:Репозиторий:openSUSE]] ccccd9daf0ad8c725013c8fcc829f6e9165cfd31 470 469 2010-02-17T09:48:03Z VasileVsx 2 wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''openSUSE'' 11.1, 11.2 pentru architecturile i386 şi x86_64 * ''openSUSE updates'' 10.3, 11.0, 11.1, 11.2, 11.3 pentru architecturile i386 şi x86_64 {{Information|Repozitoriile openSUSE standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [[Category:Repozitorii|openSUSE]] [[ro:Репозиторий:openSUSE]] 329f2ca5900e0433c04e8977db2a66ad188a3a7f 473 470 2010-02-17T09:50:11Z VasileVsx 2 wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''openSUSE'' 11.1, 11.2 pentru architecturile i386 şi x86_64 * ''openSUSE updates'' 10.3, 11.0, 11.1, 11.2, 11.3 pentru architecturile i386 şi x86_64 {{Information|Repozitoriile openSUSE standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [[Category:Repozitorii|openSUSE]] [[ru:Репозиторий:openSUSE]] ba2762b4efe41c91d1e4e5f8883b14afce3d433f 475 473 2010-02-17T19:23:01Z VasileVsx 2 Linkuri wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''openSUSE'' 11.1, 11.2 pentru architecturile i386 şi x86_64 * ''openSUSE updates'' 10.3, 11.0, 11.1, 11.2, 11.3 pentru architecturile i386 şi x86_64 {{Information|Repozitoriile openSUSE standard plasate pe oglinda noastră vă sînt accesibile în mod automat.}} [http://mirrors.opensuse.org/ Lista oglinzilor openSUSE] [http://repo.fedora.md/mirrors/opensuse/ openSUSE oglinda pe serverul nostru] [http://repo.fedora.md/mirrors/opensuse/distribution/openSUSE-current/iso/ imagini ISO a versiunii curente openSUSE] [[Category:Repozitorii|openSUSE]] [[ru:Репозиторий:openSUSE]] 119058a3436995825736a8df55e9e2d8151724a0 Репозиторий:OpenSUSE 0 180 472 2010-02-17T09:49:51Z VasileVsx 2 переименовал «[[Репозиторий:OpenSUSE]]» в «[[Репозиторий:openSUSE]]»:&#32;fix distro name wikitext text/x-wiki #перенаправление [[Репозиторий:openSUSE]] 6795bf35ce7f16e6d88cdbcab87f5764ad2f4dab Настройка NATa 0 72 476 169 2010-03-30T08:34:25Z VasileVsx 2 sysctl usage wikitext text/x-wiki {{Суперпользователь}} SNAT используется для преобразования сетевых адресов (Source Network Address Translation), т.е. изменение исходящего IP адреса в IP заголовке пакета. Например, это действие можно использовать для предоставления выхода в Интернет другим компьютерам из локальной сети, имея лишь один уникальный IP адрес. Для этого. необходимо включить пересылку пакетов (forwarding) в ядре и затем создать правила, которые будут транслировать исходящие IP адреса нашей локальной сети в реальный внешний адрес. В результате, внешний мир ничего не будет знать о нашей локальной сети, он будет считать, что запросы пришли с нашего брандмауэра. SNAT допускается выполнять только в таблице nat, в цепочке POSTROUTING. Другими словами, только здесь допускается преобразование исходящих адресов. Если первый пакет в соединении подвергся преобразованию исходящего адреса, то все последующие пакеты, из этого же соединения, будут преобразованы автоматически и не пойдут через эту цепочку правил. Для включения этого режима необходимо: 1. Выполнить для разрешения трафика пакетов между интрефейсами: <source lang="bash"> # echo 1 > /proc/sys/net/ipv4/ip_forward </source> или, для включения режима при каждом запуске: <source lang="bash"> # echo net.ipv4.ip_forward = 1 > /etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> Чтобы при загрузке данная опция сохранялась необходимо в файле /etc/sysctl.conf отредактировать <code>net.ipv4.ip_forward = 1</code> 2. Разрешаем FORWARD: <source lang="bash"> # iptables -t filter -A FORWARD -s {LOCAL_IP} -j ACCEPT # iptables -t filter -A FORWARD -d {LOCAL_IP} -j ACCEPT </source> где <code>{LOCAL_IP}</code> - подсеть или локальная IP. 3. Устанавливаем NAT: <source lang="bash"> # iptables -t nat -A POSTROUTING -s {LOCAL_IP} -j SNAT --to-source {EXTERNAL_IP} </source> где <code>{EXTERNAL_IP}</code> - внешняя IP или диапазон внешних IP. Для того, чтобы настройки сохранились при следующем запуске, необходимо выполнить команду: <source lang="bash"> # service iptables save </source> Возможно использовать вместо SNAT - MASQUERADE, но он белее ресурсоёмкий из-за того, что iptables автоматически выбирает внешний интерфейс. Рекомендуется использовать при динамически назначаемом внешнем IP-адресе. ---- Источники: * http://forum.linux.lg.ua/index.php?showtopic=49&pid=363&mode=threaded&show=&st=& [[Category:Установка и настройка]] [[Category:Настройка системы]] 0bf91f27c6b095a4a00b3b6248dde65d477ce3d6 Repozitori:Fedora 13 0 181 477 2010-04-26T15:02:31Z VasileVsx 2 Новая страница: «{{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 13 (Everything)'', ''Fedora 13 Updates'' pentru architecturile i386 şi x…» wikitext text/x-wiki {{Superuser}} FedoraMD prestează access la oglinzile următorelor repozitorii: * ''Fedora 13 (Everything)'', ''Fedora 13 Updates'' pentru architecturile i386 şi x86_64 * ''Livna'' pentru Fedora 13 (architecturile i386 şi x86_64) * ''RPMFusion'' pentru Fedora 13 (architecturile i386 şi x86_64) * ''RussianFedora'' pentru Fedora 13 (architecturile i386 şi x86_64) * ''FMD'' pentru Fedora 13 (architecturile i386 şi x86_64) Pentru a seta YUM la repozitorii adiţionale de pe acest site, instalaţi pachetul ''fedoramd-release-13'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-13.rpm </source> {{Information|Repozitoriile Fedora standard plasate pe oglinda noastră vă sînt accesibile în mod automat}} [[Category:Repozitorii|Fedora 13]] [[ru:Репозиторий:Fedora 13]] f749ff86d7a0c1d86c8034c5e7a631bddba06982 Репозиторий:Fedora 13 0 182 478 2010-04-26T15:03:26Z VasileVsx 2 Новая страница: «{{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora …» wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 13 (Everything)'', ''Fedora 13 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 13 (i386 и x86_64 архитектуры) * ''RPMFusion'' для Fedora 13 (i386 и x86_64 архитектуры) * ''RussianFedora'' для Fedora 13 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 13 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с нашим сайтом установите пакет ''fedoramd-release-13'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-13.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 13]] [[ro:Repozitori:Fedora 13]] e748e2e36f1794241247c620b74e4c77c2111483 Обсуждение участника:StepanAfemovich 3 183 480 2010-05-05T23:27:02Z StepanAfemovich 72 Обо мне wikitext text/x-wiki == Обо мне == [[Участник:StepanAfemovich]] '''Область интересов:''' Программирование мобильных телефонов. '''Родился:''' 23 марта 1974 года '''Сфера работы:''' Продавец мобильных телефонов. '''Интересы:''' Программирование, мобильные телефоны. '''Любимая марка телефона:''' Nokia. '''E-mail:''' afemovichstepan@yandex.ru ---- '''Любимые сайты телефонов Nokia:''' [http://www.telefon-nokia.ru Телефоны Nokia]| [http://www.nokianews.ru Новости о Nokia]| [http://www.web-hosings Рубрики о Nokia]| [http://www.nokia-articles.ru Статьи о Nokia]| [http://www.nokia-company.ru Компания Nokia]| [http://www.nokia-event.ru События Nokia]| [http://www.receptssous.ru Соусы к мясу] 1389dfbb084f23651c12682b6c4d6b2b7ce75b90 Rtorrent 0 103 481 211 2010-05-12T17:48:59Z 188.134.38.14 0 wikitext text/x-wiki {{Суперпользователь}} [http://libtorrent.rakshasa.no/ Домашняя страница] == Установка == === Подготовка === Ставить rtorrent не просто, но очень просто, как и всё что находится в Fedora Extras: <source lang="bash"> # yum -y install rtorrent </source> Также можно найти более новую версию в [http://dag.wieers.com/ dag]: [http://dag.wieers.com/rpm/packages/rtorrent/ rtorrent] и [http://dag.wieers.com/rpm/packages/libtorrent/ libtorrent]. === Настройка === Создадим файл с настройками: <source lang="bash"> $ cat <<EOF >>~/.rtorrent.rc port_range = 10000-10005 check_hash = yes directory = /mnt/storage/torrent session = /mnt/storage/torrent tos = default upload_rate = 95 download_rate = 0 EOF </source> В этом примере, в домашнем каталоге пользователя (не обязательно ''root'', более того - желательно в каталоге пользователя отличного от ''root'') создам файл со следующими настройками: * проверять хеш торрентов после завершения закачки * прослушивать свободный порт из диапазона ''10000-10005'' * использовать сессии, и сохранять торренты и закачки в ''/mnt/storage/torrent'' * установить поле TOS исходящих IP пакетов по умолчанию для системы (но не по умолчанию для rtorrent). Если не определить эту настройку возможны задержки в комбинациями с некоторыми рутерами[http://rock-slovo.ru] . * ограничить отдачу скоростью 95 kb/s * не ограничить закачку В список правил ''iptables'' добавляем строки (мы же хотим быть подключаемыми): <source lang="bash"> # iptables -A INPUT -p tcp -m state --state NEW -m multiport --destination-ports 10000:10005 -i $EXTIF -j ACCEPT # iptables -A INPUT -p udp -m state --state NEW -m multiport --destination-ports 10000:10005 -i $EXTIF -j ACCEPT </source> если наш клиент не имеет внешнего IP, тогда на рутере (а у нас там Linux, верно?) настраиваем DNAT <source lang="bash"> # iptables -t nat -A PREROUTING --dst $INET_IP -p tcp -m multiport --destination-ports 10000:10005 -j DNAT --to-destination $LANSERV_IP # iptables -t nat -A PREROUTING --dst $INET_IP -p udp -m multiport --destination-ports 10000:10005 -j DNAT --to-destination $LANSERV_IP </source> В этих примерах: ''EXTIF'' - имя устройства "глядящего" наружу. например ''eth0'' ''INET_IP'' - внешний IP адрес ''LANSERV_IP'' - IP адрес машины на которой запущен rtorrent клиент == Запуск == Теперь можно запускать rtorrent: <source lang="bash"> $ rtorrent </source> Управляем клиентом стрелками и: backspace - для добавления torrent'a (работает автозаполнение по Tab) return - то же самое, но торрент остаётся неактивным Ctrl-O Указать иной каталог для торрента. Ctrl-s Запустить закачку (опционально проверив хеш) Ctrl-d Остановить активную закачку, или удалить неактивный торрент. Ctrl-r Перепроверить хеш. Больше можно узнать в странице ''man rtorrent'' или [http://libtorrent.rakshasa.no/wiki/RTorrentUserGuide Руководстве пользователя]. '''''Внимание:''' скорее всего вы не сможете воспользоваться комбинациями клавиш Ctrl-s, Ctrl-q, так как они используются для управлением терминалом.'' Впрочем есть решение - перед запуском rtorrent (или screen) выполнить команды: <source lang="bash"> $ stty stop undef $ stty start undef </source> == Удаленное управление == Усложняем задачу[http://only-suicide-girls.ru]: имеем удаленный сервачок (конечно на нем запущен Fedora Core 6), без видеокарты, но с сетевухой и хорошим каналом в интернет - грех подобным не воспользоваться ;) Для организации отключаемых сессий можно воспользоваться dtach или screen (обе можно найти в репо Fedora Core). Мы воспользуемся последним[http://triton-tribe.ru] . <source lang="bash"> $ yum install screen </source> Хотя предположительно наш сервер не перезагружается, неплохо бы обеспечить запуск rtorrent при запуске системы: <source lang="bash"> # cat <<EOF >/etc/init.d/rtorrent #!/bin/bash # # Starting rtorrent in a screen session as daemon # Author: Vasile Vsx # # chkconfig: 2345 50 01 # # description: start rtorrent detached # processname: rtorrent # source function library . /etc/rc.d/init.d/functions # Source networking configuration. [ -r /etc/sysconfig/network ] && . /etc/sysconfig/network # Check that networking is up. [ "\${NETWORKING}" = "no" ] && exit 0 if [ -f /etc/sysconfig/rtorrent ]; then . /etc/sysconfig/rtorrent fi if [ -z \$RTORRENT_USER ]; then exit 0 fi RETVAL=0 start() { echo -n "Starting rtorrent: " daemon --user \$RTORRENT_USER /usr/bin/screen -dmS rtorrent /usr/bin/rtorrent \$OPTIONS RETVAL=\$? echo } stop() { echo -n "Stopping rtorrent: " killproc rtorrent -INT RETVAL=\$? echo } restart() { stop start } case "\$1" in start) start ;; stop) stop ;; restart) restart ;; status) status rtorrent ;; *) echo $"Usage: \$0 {start|stop|status|restart}" exit 1 esac exit $RETVAL EOF # chmod +x /etc/init.d/rtorrent # chkconfig --add rtorrent </source> Определяем пользователя используемого для запуска rtorrent <source lang="bash"> # cat <<EOF >/etc/sysconfig/rtorrent RTORRENT_USER=username EOF </source> запускаем и останавливает rtorrent командами: <source lang="bash"> # /sbin/service rtorrent start </source> и <source lang="bash"> # /sbin/service rtorrent stop </source> Подключаемся к запущенной сессии: <source lang="bash"> $ screen -r </source> отключаемся сочетанием клавиш: <code>Ctrl-a d</code> Также создаем простой скрипт (rt): <source lang="bash"> $ mkdir ~/bin && cat <<EOF >~/bin/rt #!/bin/sh stty stop undef stty start undef screen -rS rtorrent EOF chmod +x ~/bin/rt </source> [[Category:Программное обеспечение]] e47c1b1402a6d7036c15ebdb4cb24b466b180a1c Установка локального принтера 0 65 482 151 2010-05-12T17:49:40Z 188.134.38.14 0 wikitext text/x-wiki {{Суперпользователь}} == Настройка CUPS через web-интерфейс == Запустите свой любимый броузер и откройте страницу http://localhost:631 — вы увидите интерфейс настройки CUPS. Выберите раздел «Manage Printers», далее раздел «Add Printer». Затем у вас спросят имя и пароль администратора CUPS; по умолчанию это администратор системы (root). Появится первый диалог — достаточно указать имя (Name) принтера, описание (Description) носит вспомогательный характер, а местоположение (Location) нужно только в том случае, если у вас настроена сложная система разграничения доступа в CUPS. В следующем диалоге производится выбор устройства, к которому подключён принтер. Два последующих — выбор модели и производителя принтера. Напоследок можно заказать печать пробной страницы. Может возникнуть ситуация, что сочетания производитель/модель вашего принтера не окажется в списке, предложенном CUPS — это означает, что в базе данных CUPS не нашлось описания для вашей модели принтера. В этот момент отчаиваться не следует. Описание принтера в CUPS — это файл модель_принтера.ppd, PPD-файлы для известных моделей CUPS держит в каталоге /usr/share/cups/model, имеющийся там список принтеров далеко не исчерпывающий. Однако познакомить CUPS с новым принтером очень легко, если принтер поддерживает один из стандартных языков управления и будет работать с одним из уже существующих драйверов (что почти всегда так). Для этого достаточно найти PPD-файл для нужной модели принтера и поместить его в зону видимости CUPS. Большую базу описаний принтеров предоставляет foomatic (ниже написано о том, как им воспользоваться), если нужной модели не нашлось и там, стоит поискать PPD-файл на сайте производителя принтера[http://sh-ost.ru]. == Как удалить лишние принтеры? == Если вы слишком увлеклись настройками и теперь путаетесь между десятком заведенных принтеров, то самое время удалить лишние[http://tarantino-ost.ru]. Удаление можно производить вручную удалением описания из конфигурационых файлов спулера (/etc/cups/printers.conf). Для CUPS можно вновь воспользоваться Web-интерфейсом[http://8bit-game.ru] . [[Category:Установка и настройка]] [[Category:Настройка системы]] 46e888ec3e06b4dfcf8c0b1b032b23709107a3ac 492 482 2010-05-12T19:04:03Z VasileVsx 2 Anularea modificărilor efectuate de către [[Special:Contributions/188.134.38.14|188.134.38.14]] ([[User talk:188.134.38.14|discuţie]]) şi revenire la ultima versiune de către [[User:OlegA|OlegA]] wikitext text/x-wiki {{Суперпользователь}} == Настройка CUPS через web-интерфейс == Запустите свой любимый броузер и откройте страницу http://localhost:631 — вы увидите интерфейс настройки CUPS. Выберите раздел «Manage Printers», далее раздел «Add Printer». Затем у вас спросят имя и пароль администратора CUPS; по умолчанию это администратор системы (root). Появится первый диалог — достаточно указать имя (Name) принтера, описание (Description) носит вспомогательный характер, а местоположение (Location) нужно только в том случае, если у вас настроена сложная система разграничения доступа в CUPS. В следующем диалоге производится выбор устройства, к которому подключён принтер. Два последующих — выбор модели и производителя принтера. Напоследок можно заказать печать пробной страницы. Может возникнуть ситуация, что сочетания производитель/модель вашего принтера не окажется в списке, предложенном CUPS — это означает, что в базе данных CUPS не нашлось описания для вашей модели принтера. В этот момент отчаиваться не следует. Описание принтера в CUPS — это файл модель_принтера.ppd, PPD-файлы для известных моделей CUPS держит в каталоге /usr/share/cups/model, имеющийся там список принтеров далеко не исчерпывающий. Однако познакомить CUPS с новым принтером очень легко, если принтер поддерживает один из стандартных языков управления и будет работать с одним из уже существующих драйверов (что почти всегда так). Для этого достаточно найти PPD-файл для нужной модели принтера и поместить его в зону видимости CUPS. Большую базу описаний принтеров предоставляет foomatic (ниже написано о том, как им воспользоваться), если нужной модели не нашлось и там, стоит поискать PPD-файл на сайте производителя принтера. == Как удалить лишние принтеры? == Если вы слишком увлеклись настройками и теперь путаетесь между десятком заведенных принтеров, то самое время удалить лишние. Удаление можно производить вручную удалением описания из конфигурационых файлов спулера (/etc/cups/printers.conf). Для CUPS можно вновь воспользоваться Web-интерфейсом. [[Category:Установка и настройка]] [[Category:Настройка системы]] 55ee0285dbe621d55b73fbfbeac8b815441f65eb Репозиторий:Fedora 9 0 124 483 389 2010-05-12T17:50:32Z 188.134.38.14 0 wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 9 (Everything)'', ''Fedora 9 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 9 (i386 и x86_64 архитектуры)[http://iscrubs.ru] * ''RPMFusion'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 9 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 9 (i386 и x86_64 архитектуры)[http://comix-live.ru] Чтобы настроить ваш YUM[http://absurdko.ru] для работы с дополнительными репозиториями установите пакет ''fedoramd-release-9'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-9.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 9]] [[ro:Repozitori:Fedora 9]] ddbdd563b84e20c1c1c141107230052977732f40 493 483 2010-05-12T19:04:26Z VasileVsx 2 Anularea modificărilor efectuate de către [[Special:Contributions/188.134.38.14|188.134.38.14]] ([[User talk:188.134.38.14|discuţie]]) şi revenire la ultima versiune de către [[User:VasileVsx|VasileVsx]] wikitext text/x-wiki {{Суперпользователь}} FedoraMD предоставляет доступ к зеркалам следующих репозиториев: * ''Fedora 9 (Everything)'', ''Fedora 9 Updates'' для i386 и x86_64 архитектур * ''Livna'' для Fedora 9 (i386 и x86_64 архитектуры) * ''RPMFusion'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Professor Kriehn's Repository'' для Fedora 9 (i386 и x86_64 архитектуры) * ''Tigro'' для Fedora 9 (i386 и x86_64 архитектуры) * ''FMD'' для Fedora 9 (i386 и x86_64 архитектуры) Чтобы настроить ваш YUM для работы с дополнительными репозиториями установите пакет ''fedoramd-release-9'': <source lang="bash"> # rpm -Uvh http://repo.fedoramd.org/fmd/fedora/fedoramd-release-9.rpm </source> {{Information|Базовые репозитории Fedora нашего зеркала вам доступны без дополнительных настроек.}} [[Category:Репозитории|Fedora 9]] [[ro:Repozitori:Fedora 9]] 321d6cbeeb515ae7aaa1fd7b10ab6de04bcce771 FreeDOS на USB Flash 0 147 484 362 2010-05-12T17:51:08Z 188.134.38.14 0 wikitext text/x-wiki Однажды мне попался ноутбук типа [http://eeepc.asus.com/ ASUS Eee PC] без привода. Естественно, необходимо было переустановить на ней систему. В итоге понадобился [http://www.freedos.org/ FreeDOS]. Флопика не было, но была флеха под рукой. Как оказалось, сделать загрузочную флеху с [http://www.freedos.org/ FreeDOS] не сложно. Теперь все по порядку[http://progylka.ru]. == Что понадобится == 1. [http://syslinux.zytor.com/ syslinux] , устанавливается просто[http://sweet-photo.ru]: <source lang="bash"># yum install syslinux</source> 2. Образ FreeDOS. Его можно слепить самому, но в интернете есть уже [http://odin.fdos.org/ готовый]. == Установка == 1. Необходимо сделать раздел на флехе активным, делается это или в <code>fdisk</code> или в <code>parted</code> (для новичков подойдет графическая надстройка над parted - ''gparted'' ). Не буду рассказывать как это делается, т.к. это отдельная тема для разговора[http://batfun.ru]. 2. Выполняем команду, где <code>/dev/sdb1</code> наша флешка. Кстати, не забываем ее размонтировать перед операциями. <source lang="bash"> # syslinux /dev/sdb1 </source> 3. Копируем MBR <source lang="bash"> # cat /usr/lib/syslinux/mbr.bin > /dev/sdb </source> 4. Теперь необходимо скопировать драйвер для загрузки образа memdisk, но прежде необходимо смонтировать флешку: <source lang="bash"> # cp /usr/lib/syslinux/memdisk /media/disk/ </source> 5. Копируем образ FreeDOS на флешку. 6. На флехе создаем файл <code>syslinux.cfg</code> и редактируем его: <source lang="cfc"> default freedos prompt 0 label freedos kernel memdisk append initrd=odin1200.img </source> <code>odin1200.img</code> - файл нашего образа. 7. Размонтируем и пользуемся на здоровье. [[Category:Статьи]] 18eb367e090a8001e861fb1a55ad984eae262a27 494 484 2010-05-12T19:04:29Z VasileVsx 2 Anularea modificărilor efectuate de către [[Special:Contributions/188.134.38.14|188.134.38.14]] ([[User talk:188.134.38.14|discuţie]]) şi revenire la ultima versiune de către [[User:OlegA|OlegA]] wikitext text/x-wiki Однажды мне попался ноутбук типа [http://eeepc.asus.com/ ASUS Eee PC] без привода. Естественно, необходимо было переустановить на ней систему. В итоге понадобился [http://www.freedos.org/ FreeDOS]. Флопика не было, но была флеха под рукой. Как оказалось, сделать загрузочную флеху с [http://www.freedos.org/ FreeDOS] не сложно. Теперь все по порядку. == Что понадобится == 1. [http://syslinux.zytor.com/ syslinux] , устанавливается просто: <source lang="bash"># yum install syslinux</source> 2. Образ FreeDOS. Его можно слепить самому, но в интернете есть уже [http://odin.fdos.org/ готовый]. == Установка == 1. Необходимо сделать раздел на флехе активным, делается это или в <code>fdisk</code> или в <code>parted</code> (для новичков подойдет графическая надстройка над parted - ''gparted'' ). Не буду рассказывать как это делается, т.к. это отдельная тема для разговора. 2. Выполняем команду, где <code>/dev/sdb1</code> наша флешка. Кстати, не забываем ее размонтировать перед операциями. <source lang="bash"> # syslinux /dev/sdb1 </source> 3. Копируем MBR <source lang="bash"> # cat /usr/lib/syslinux/mbr.bin > /dev/sdb </source> 4. Теперь необходимо скопировать драйвер для загрузки образа memdisk, но прежде необходимо смонтировать флешку: <source lang="bash"> # cp /usr/lib/syslinux/memdisk /media/disk/ </source> 5. Копируем образ FreeDOS на флешку. 6. На флехе создаем файл <code>syslinux.cfg</code> и редактируем его: <source lang="cfc"> default freedos prompt 0 label freedos kernel memdisk append initrd=odin1200.img </source> <code>odin1200.img</code> - файл нашего образа. 7. Размонтируем и пользуемся на здоровье. [[Category:Статьи]] 32386dc93e4d8dc0621f836705abad02068c722a 500 494 2011-03-07T14:02:16Z 94.24.189.89 0 /* Установка */ Перенос строки wikitext text/x-wiki Однажды мне попался ноутбук типа [http://eeepc.asus.com/ ASUS Eee PC] без привода. Естественно, необходимо было переустановить на ней систему. В итоге понадобился [http://www.freedos.org/ FreeDOS]. Флопика не было, но была флеха под рукой. Как оказалось, сделать загрузочную флеху с [http://www.freedos.org/ FreeDOS] не сложно. Теперь все по порядку. == Что понадобится == 1. [http://syslinux.zytor.com/ syslinux] , устанавливается просто: <source lang="bash"># yum install syslinux</source> 2. Образ FreeDOS. Его можно слепить самому, но в интернете есть уже [http://odin.fdos.org/ готовый]. == Установка == 1. Необходимо сделать раздел на флехе активным, делается это или в <code>fdisk</code> или в <code>parted</code> (для новичков подойдет графическая надстройка над parted - ''gparted'' ). Не буду рассказывать как это делается, т.к. это отдельная тема для разговора. 2. Выполняем команду, где <code>/dev/sdb1</code> наша флешка. Кстати, не забываем ее размонтировать перед операциями. <source lang="bash"> # syslinux /dev/sdb1 </source> 3. Копируем MBR <source lang="bash"> # cat /usr/lib/syslinux/mbr.bin > /dev/sdb </source> 4. Теперь необходимо скопировать драйвер для загрузки образа memdisk, но прежде необходимо смонтировать флешку: <source lang="bash"> # cp /usr/lib/syslinux/memdisk /media/disk/ </source> 5. Копируем образ FreeDOS на флешку. 6. На флехе создаем файл <code>syslinux.cfg</code> и редактируем его: <source lang="cfc"> default freedos prompt 0 label freedos kernel memdisk append initrd=odin1200.img </source> <code>odin1200.img</code> - файл нашего образа. 7. Размонтируем и пользуемся на здоровье. [[Category:Статьи]] 2848ee30820eab9afc1e129f69ccf807f9d437ad 501 500 2011-03-07T14:07:42Z 94.24.189.89 0 /* Установка */ Перенос строки wikitext text/x-wiki Однажды мне попался ноутбук типа [http://eeepc.asus.com/ ASUS Eee PC] без привода. Естественно, необходимо было переустановить на ней систему. В итоге понадобился [http://www.freedos.org/ FreeDOS]. Флопика не было, но была флеха под рукой. Как оказалось, сделать загрузочную флеху с [http://www.freedos.org/ FreeDOS] не сложно. Теперь все по порядку. == Что понадобится == 1. [http://syslinux.zytor.com/ syslinux] , устанавливается просто: <source lang="bash"># yum install syslinux</source> 2. Образ FreeDOS. Его можно слепить самому, но в интернете есть уже [http://odin.fdos.org/ готовый]. == Установка == 1. Необходимо сделать раздел на флехе активным, делается это или в <code>fdisk</code> или в <code>parted</code> (для новичков подойдет графическая надстройка над parted - ''gparted'' ). Не буду рассказывать как это делается, т.к. это отдельная тема для разговора. 2. Выполняем команду, где <code>/dev/sdb1</code> наша флешка. Кстати, не забываем ее размонтировать перед операциями. <source lang="bash"> # syslinux /dev/sdb1 </source> 3. Копируем MBR <source lang="bash"> # cat /usr/lib/syslinux/mbr.bin > /dev/sdb </source> 4. Теперь необходимо скопировать драйвер для загрузки образа memdisk, но прежде необходимо смонтировать флешку: <source lang="bash"> # cp /usr/lib/syslinux/memdisk /media/disk/ </source> 5. Копируем образ FreeDOS на флешку. 6. На флехе создаем файл <code>syslinux.cfg</code> и редактируем его: <source lang="cfc"> default freedos prompt 0 label freedos kernel memdisk append initrd=odin1200.img </source> <code>odin1200.img</code> - файл нашего образа. 7. Размонтируем и пользуемся на здоровье. [[Category:Статьи]] 96dc826c4728aa7b21866c0bdcc91c046b52ec3f 502 501 2011-04-12T04:34:20Z 78.106.92.132 0 wikitext text/x-wiki Однажды мне попался ноутбук типа [http://www.internet-vip.ru/skachat ASUS Eee PC] без привода. Естественно, необходимо было переустановить на ней систему. В итоге понадобился [http://www.freedos.org/ FreeDOS]. Флопика не было, но была флеха под рукой. Как оказалось, сделать загрузочную флеху с [http://www.freedos.org/ FreeDOS] не сложно. Теперь все по порядку. == Что понадобится == 1. [http://syslinux.zytor.com/ syslinux] , устанавливается просто: <source lang="bash"># yum install syslinux</source> 2. Образ FreeDOS. Его можно слепить самому, но в интернете есть уже [http://odin.fdos.org/ готовый]. == Установка == 1. Необходимо сделать раздел на флехе активным, делается это или в <code>fdisk</code> или в <code>parted</code> (для новичков подойдет графическая надстройка над parted - ''gparted'' ). Не буду рассказывать как это делается, т.к. это отдельная тема для разговора. 2. Выполняем команду, где <code>/dev/sdb1</code> наша флешка. Кстати, не забываем ее размонтировать перед операциями. <source lang="bash"> # syslinux /dev/sdb1 </source> 3. Копируем MBR <source lang="bash"> # cat /usr/lib/syslinux/mbr.bin > /dev/sdb </source> 4. Теперь необходимо скопировать драйвер для загрузки образа memdisk, но прежде необходимо смонтировать флешку: <source lang="bash"> # cp /usr/lib/syslinux/memdisk /media/disk/ </source> 5. Копируем образ FreeDOS на флешку. 6. На флехе создаем файл <code>syslinux.cfg</code> и редактируем его: <source lang="cfc"> default freedos prompt 0 label freedos kernel memdisk append initrd=odin1200.img </source> <code>odin1200.img</code> - файл нашего образа. 7. Размонтируем и пользуемся на здоровье. [[Category:Статьи]] c58603e7ad267114a95c880cf14738f18bf43d87 503 502 2011-04-13T06:06:40Z OlegA 1 Правки [[Special:Contributions/78.106.92.132|78.106.92.132]] ([[User talk:78.106.92.132|обсуждение]]) откачены к версии [[User:94.24.189.89|94.24.189.89]] wikitext text/x-wiki Однажды мне попался ноутбук типа [http://eeepc.asus.com/ ASUS Eee PC] без привода. Естественно, необходимо было переустановить на ней систему. В итоге понадобился [http://www.freedos.org/ FreeDOS]. Флопика не было, но была флеха под рукой. Как оказалось, сделать загрузочную флеху с [http://www.freedos.org/ FreeDOS] не сложно. Теперь все по порядку. == Что понадобится == 1. [http://syslinux.zytor.com/ syslinux] , устанавливается просто: <source lang="bash"># yum install syslinux</source> 2. Образ FreeDOS. Его можно слепить самому, но в интернете есть уже [http://odin.fdos.org/ готовый]. == Установка == 1. Необходимо сделать раздел на флехе активным, делается это или в <code>fdisk</code> или в <code>parted</code> (для новичков подойдет графическая надстройка над parted - ''gparted'' ). Не буду рассказывать как это делается, т.к. это отдельная тема для разговора. 2. Выполняем команду, где <code>/dev/sdb1</code> наша флешка. Кстати, не забываем ее размонтировать перед операциями. <source lang="bash"> # syslinux /dev/sdb1 </source> 3. Копируем MBR <source lang="bash"> # cat /usr/lib/syslinux/mbr.bin > /dev/sdb </source> 4. Теперь необходимо скопировать драйвер для загрузки образа memdisk, но прежде необходимо смонтировать флешку: <source lang="bash"> # cp /usr/lib/syslinux/memdisk /media/disk/ </source> 5. Копируем образ FreeDOS на флешку. 6. На флехе создаем файл <code>syslinux.cfg</code> и редактируем его: <source lang="cfc"> default freedos prompt 0 label freedos kernel memdisk append initrd=odin1200.img </source> <code>odin1200.img</code> - файл нашего образа. 7. Размонтируем и пользуемся на здоровье. [[Category:Статьи]] 96dc826c4728aa7b21866c0bdcc91c046b52ec3f Установка и настройка драйвера для видео-карт фирмы ATI 0 81 485 447 2010-05-12T17:51:52Z 188.134.38.14 0 wikitext text/x-wiki {{Суперпользователь}} '''Внимание:''' далее описаны 2 возможные процедуры установки драйвера. Используйте только одну из них (они взаимоисключаемы). Процедура 2 - использование пакетов от livna, более проста и рекомендуема к применению. == Проприетарные драйвера == [[Установка проприетарных драйверов от компании ATI (AMD)]]. == Совместимость == Современные видеокарты на базе чипов R6xx-R7xx (начиная от Radeon HD2400) поддерживаются драйвером xorg-x11-drv-catalyst[http://trupoezdka.ru] (kmod-catalyst). Для Fedora 11 следует использовать kmod-catalyst не старее версии 9.8. Устаревшие видеокарты на базе чипов R3xx-R5xx (начиная с Radeon 9500 до Radeon X1950) работают с драйвером xorg-x11-drv-fglrx (kmod-fglrx), более не поддерживаемым AMD/ATI. Последняя версия - 9.3. Устаревшие видеокарты на базе чипов R2xx (начиная с Radeon 8500 до Radeon 9250) работают с проприетарным драйвером fglrx версии 6.8 (8.28.8), более не поддерживаемым AMD/ATI и не имеющего пакета в RPMFusion[http://goretur.ru]. Открытый драйвер xorg-x11-drv-radeon поддерживает всю линейку видеокарт AMD, но с различными ограничениями функциональности для разных семейств и отдельных чипсетов. См. [http://www.x.org/wiki/radeon Radeon@x.org] и ''man 4 radeon'' == Установка fglrx из RPMFusion-nonfree репозитория == 1. Добавление репозитория RPMFusion-nonfree, если ещё не добавлен[http://doctoprav.ru]. 2. Устанавливаем xorg-x11-drv-fglrx и kmod-fglrx. <source lang="bash"> # yum install xorg-x11-drv-fglrx kmod-fglrx </source> Если при обновлении выдает сообщение о конфликтах версий kmod-fglrx, то перед запуском предыдущей строки, удалите предыдущую версию kmod-fglrx, а затем запустите установку: <source lang="bash"> # rpm --nodeps -e kmod-fglrx # yum install kmod-fglrx </source> 3. Запускаем в консоли: <source lang="bash"> # init 3 </source> 4. Запускаем в косоли: <source lang="bash"> # fglrx-config-display enable </source> 5. Редактируем /etc/X11/xorg.conf, проверяем наличие следующих строк, если их нет, то добавляем: <source lang="httpd"> Section "Device" Driver "fglrx" EndSection Section "Extensions" Option "Composite" "Disable" EndSection Section "ServerFlags" Option "AIGLX" "off" EndSection </source> Если вы используете драйвер новее 8.42.3 то последние две секции (''Extensions'' и ''Server``Flags'') менять не нужно. Версия драйвера 8.42 и выше поддерживает AIGLX. Если чипсет компании Intel, то после строчки <code>Driver "fglrx"</code> добавляем <code>Option "~UseInternalAGPGART" "no"</code> в секции ''Section "Device"'' 6. Запускаем X в косоли: <source lang="bash"> # init 5 </source> 7. Проверяем работоспособность драйвера: <source lang="bash"> # fglrxinfo </source> и смотрим, чтобы "OpenGL vendor string" был "ATI Technologies Inc." 8. Запускаем <source lang="bash"> # glxinfo |grep direct </source> и смотрим, чтобы было: "direct rendering: Yes" 9. Запускаем <source lang="bash"> # fgl_glxgears </source> и смотрим, как шустро вращается кубик + считаем FPS. '''''Примечание:''''' Если при попытке подгрузить модуль fglrx выдаёт ошибку типа: <source lang="bash"> # modprobe fglrx FATAL: Error inserting fglrx (/lib/modules/2.6.11.231005/misc/fglrx.ko): Operation not permitted </source> значит ещё подгружен модуль radeon. Выгрузите его: <source lang="bash"> # modprobe -r radeon </source> а затем, снова загрузите fglrx: <source lang="bash"> # modprobe fglrx </source> Если что-то не получается - напишите в тему поддержки, в форуме или чате. При этом желательно указывать вывод следующих команд: <source lang="bash"> $ grep Driver /etc/X11/xorg.conf $ egrep EE\|WW /var/log/Xorg.0.log $ ldd /usr/bin/glxinfo $ LIBGL_DEBUG=verbose glxinfo |head -n 20 $ egrep fglrx\|radeon /proc/modules $ dmesg|egrep fglrx\|radeon </source> [[Category:Драйвера]] [[Category:Установка и настройка]] 743f47531c57fbf83b5d5a08cc2069af9b9be2db 495 485 2010-05-12T19:04:35Z VasileVsx 2 Anularea modificărilor efectuate de către [[Special:Contributions/188.134.38.14|188.134.38.14]] ([[User talk:188.134.38.14|discuţie]]) şi revenire la ultima versiune de către [[User:VasileVsx|VasileVsx]] wikitext text/x-wiki {{Суперпользователь}} '''Внимание:''' далее описаны 2 возможные процедуры установки драйвера. Используйте только одну из них (они взаимоисключаемы). Процедура 2 - использование пакетов от livna, более проста и рекомендуема к применению. == Проприетарные драйвера == [[Установка проприетарных драйверов от компании ATI (AMD)]]. == Совместимость == Современные видеокарты на базе чипов R6xx-R7xx (начиная от Radeon HD2400) поддерживаются драйвером xorg-x11-drv-catalyst (kmod-catalyst). Для Fedora 11 следует использовать kmod-catalyst не старее версии 9.8. Устаревшие видеокарты на базе чипов R3xx-R5xx (начиная с Radeon 9500 до Radeon X1950) работают с драйвером xorg-x11-drv-fglrx (kmod-fglrx), более не поддерживаемым AMD/ATI. Последняя версия - 9.3. Устаревшие видеокарты на базе чипов R2xx (начиная с Radeon 8500 до Radeon 9250) работают с проприетарным драйвером fglrx версии 6.8 (8.28.8), более не поддерживаемым AMD/ATI и не имеющего пакета в RPMFusion. Открытый драйвер xorg-x11-drv-radeon поддерживает всю линейку видеокарт AMD, но с различными ограничениями функциональности для разных семейств и отдельных чипсетов. См. [http://www.x.org/wiki/radeon Radeon@x.org] и ''man 4 radeon'' == Установка fglrx из RPMFusion-nonfree репозитория == 1. Добавление репозитория RPMFusion-nonfree, если ещё не добавлен. 2. Устанавливаем xorg-x11-drv-fglrx и kmod-fglrx. <source lang="bash"> # yum install xorg-x11-drv-fglrx kmod-fglrx </source> Если при обновлении выдает сообщение о конфликтах версий kmod-fglrx, то перед запуском предыдущей строки, удалите предыдущую версию kmod-fglrx, а затем запустите установку: <source lang="bash"> # rpm --nodeps -e kmod-fglrx # yum install kmod-fglrx </source> 3. Запускаем в консоли: <source lang="bash"> # init 3 </source> 4. Запускаем в косоли: <source lang="bash"> # fglrx-config-display enable </source> 5. Редактируем /etc/X11/xorg.conf, проверяем наличие следующих строк, если их нет, то добавляем: <source lang="httpd"> Section "Device" Driver "fglrx" EndSection Section "Extensions" Option "Composite" "Disable" EndSection Section "ServerFlags" Option "AIGLX" "off" EndSection </source> Если вы используете драйвер новее 8.42.3 то последние две секции (''Extensions'' и ''Server``Flags'') менять не нужно. Версия драйвера 8.42 и выше поддерживает AIGLX. Если чипсет компании Intel, то после строчки <code>Driver "fglrx"</code> добавляем <code>Option "~UseInternalAGPGART" "no"</code> в секции ''Section "Device"'' 6. Запускаем X в косоли: <source lang="bash"> # init 5 </source> 7. Проверяем работоспособность драйвера: <source lang="bash"> # fglrxinfo </source> и смотрим, чтобы "OpenGL vendor string" был "ATI Technologies Inc." 8. Запускаем <source lang="bash"> # glxinfo |grep direct </source> и смотрим, чтобы было: "direct rendering: Yes" 9. Запускаем <source lang="bash"> # fgl_glxgears </source> и смотрим, как шустро вращается кубик + считаем FPS. '''''Примечание:''''' Если при попытке подгрузить модуль fglrx выдаёт ошибку типа: <source lang="bash"> # modprobe fglrx FATAL: Error inserting fglrx (/lib/modules/2.6.11.231005/misc/fglrx.ko): Operation not permitted </source> значит ещё подгружен модуль radeon. Выгрузите его: <source lang="bash"> # modprobe -r radeon </source> а затем, снова загрузите fglrx: <source lang="bash"> # modprobe fglrx </source> Если что-то не получается - напишите в тему поддержки, в форуме или чате. При этом желательно указывать вывод следующих команд: <source lang="bash"> $ grep Driver /etc/X11/xorg.conf $ egrep EE\|WW /var/log/Xorg.0.log $ ldd /usr/bin/glxinfo $ LIBGL_DEBUG=verbose glxinfo |head -n 20 $ egrep fglrx\|radeon /proc/modules $ dmesg|egrep fglrx\|radeon </source> [[Category:Драйвера]] [[Category:Установка и настройка]] b0e709d3a0a6db0d631d0be2e864e3261a83dde5 Все что Вы хотели знать о SSH 0 111 486 479 2010-05-12T17:52:42Z 188.134.38.14 0 wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи[http://medevil.ru]. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции [http://medelita.ru]. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа[http://journeyboy.ru]. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключ кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то <s>Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться.</s> переносим ключи в отдельную директорию, и вызываем явно с помощью IdentityFile <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config Host portal HostName portal.zone.local IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 </source> в случае использования ssh-agent приходится прибегать к дополнительным ухищрениям, ибо он всё равно норовит использовать все известные ему ключи. <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config HashKnownHosts yes RSAAuthentication no Host portal HostName portal.zone.local PubkeyAuthentication yes IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 Host gw HostName 10.1.12.1 PubkeyAuthentication yes IdentityFile ~/.ssh/tmp/id_rsa_4096_gw Host * PasswordAuthentication yes PubkeyAuthentication no </source> подробности в man ssh_config ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> === SSH-клиенты и оболочки === * GNU/Linux: [http://utils.kde.org/projects/kdessh/ kdessh], lsh-client, [http://www.openssh.com/ openssh-client], [http://putty.org.ru/ PuTTY] * MS Windows и Windows NT: [http://putty.org.ru/ PuTTY], [http://www.vandyke.com/products/securecrt/ SecureCRT], ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD * MS Windows Mobile: [http://www.pocketputty.net/ PocketPuTTy], mToken, sshCE, PocketTTY, OpenSSH, PocketConsole * Mac OS: NiftyTelnet SSH * Symbian OS: [http://s2putty.sourceforge.net/ PuTTY] * Java: MindTerm, AppGate Security Server * J2ME: MidpSSH * iPhone: [http://www.instantcocoa.com/products/pTerm/ pTerm], i-SSH, ssh (в комплекте с Terminal) [[Category:Статьи]] 09e6cc8ecc1bf8c2551ea2c929aba1333b4b3786 496 486 2010-05-12T19:04:39Z VasileVsx 2 Anularea modificărilor efectuate de către [[Special:Contributions/188.134.38.14|188.134.38.14]] ([[User talk:188.134.38.14|discuţie]]) şi revenire la ultima versiune de către [[User:82.117.252.143|82.117.252.143]] wikitext text/x-wiki {{Суперпользователь}} === Что такое SSH? === '''SSH''' (Secure Shell) — сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet и rlogin, однако использует алгоритмы шифрования передаваемой информации. Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы, поддерживающие этот протокол, доступны для различных платформ. Кроме того, протокол позволяет не только использовать безопасный удалённый shell на машине, но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). Так же ssh способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука. Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуют клиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIX ОС. Большую популярность протокол получил после широкого развития sniffer’ов, как альтернативное небезопасному телнету решение для управления важными узлами. На данный момент известно две ветки версий — 1 и 2. Однако ветка 1 остановлена, так как в конце 90-x в ней было найдено много уязвимостей, некоторые из которых до сих пор накладывают серьёзные ограничения на её использование, поэтому перспективной, развивающейся и наиболее безопасной является версия 2. === Аутентификация на SSH сервере с использованием ключей === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' OpenSSH кроме паролей поддерживает ещё несколько методов аутентификации. Он может быть сконфигурирован на использование методов PAM (Pluggable authentication modules), протокола Challenge/Response, Kerberos, аутентификации по доверенным хостам и такая экзотика как ключи X509. Но самым популярным является метод Identity/Pubkey. Целью использования идентификации Identity/Pubkey является исключение использования статических паролей. Вместо того, чтобы каждый раз набирать пароли, которые могут быть перехвачены кейлоггером или просто подсмотрены, у нас на диске имеется пара ключей, которые и используются для проверки подлинности. Ваша учетная запись на сервере SSH имеет список Identities/Pubkeys, которому можно доверять и если Вы сможете доказать, что у вас есть и публичный и приватный ключ, то доступ будет предоставлен без запроса пароля. Вот некоторые из положительных моментов этого типа аутентификации: * Никто не сможет войти на сервер с Вашей учётной записью, так как им необходимо обладать приватным ключом и кодовой фразой. * Администратор сервера может вообще убрать пароль учетной записи, дабы исключить его дискредитацию. * Вы можете использовать утилиту ssh-agent и он будет предоставлять аутентификационные данные за Вас. * Вы можете устанавливать определённые ограничения, например запрещая перенаправление портов, выполнение определённых программ и т.д. В этой статье мы рассмотрим методу создания ключей и конфигурирование учётной записи. ==== Создание Identity/Pubkey ==== В оригинальной реализации SSHv1 Вы могли создать Identity, которое было парой RSA публичного и приватного ключей. В SSHv2 формат этих ключей был изменен, стали поддерживаться ключи RSA и DSA, и эта аутентификация была переименована в Pubkey. В контексте данной статьи эти обозначения будут использоваться взаимозаменяемо, так как реализуют идентичные функции. С помощью утилиты ssh-keygen создадим необходимые ключи: <source lang="bash"> $ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/xahria/.ssh/id_rsa): Enter passphrase (empty for no passphrase): (enter passphrase) Enter same passphrase again: (enter passphrase) Your identification has been saved in /home/xahria/.ssh/id_rsa. Your public key has been saved in /home/xahria/.ssh/id_rsa.pub. The key fingerprint is: 2c:3f:a4:be:46:23:47:19:f7:dc:74:9b:69:24:4a:44 xahria@mydesktop $ cd $HOME/.ssh $ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 id_rsa -rw-r--r-- 1 xahria hatchclan 223 Jan 21 11:52 id_rsa.pub $ cat id_rsa -----BEGIN RSA PRIVATE KEY----- MIICWgIBAAKBgQCc+1oixZ/g84gpZH0NeI+CvVoY5O0FOCSpFCbhUGJigQ6VeKI5 gpOlDztpJ1Rc+KmfZ2qMaftwwnLmefhk1wPcvfZvvLjfdmHY5/LFgDujLuL2Pv+F 7tBjlyX9e9JfXZau2o8uhBkMbb3ZqYlbUuuoCAnUtL5uZUiiHM0BAtnGAd6epAYE gBHw1xnqsy+mzbuWdLEVF7crlUSsctwGapb6/SEQgEXFm0RITQ3jCY808NjRS3hW Z+uCCO8GGUsn2bZpcGXa5vZzACvZL8epJoMgQ4D0T50rAkEA0AvK4PsMF02Rzi4E mXgzd1yCa030LYR/AkApG1KT//9gju6QCXlWL6ckZg/QoyglW5myHmfPR8tbz+54 /lj06BtBA9iag5+x+caV7qKth1NPBbbUF8Sbs/WI5NYweNoG8dNY2e0JRzLamAUk jK2TIwbHtE7GoP/Za3NTZJm2Ozviz8+PHPIEyyt9/kzT0+yo3KmgsstlqwIBIwKB XdBh42izEWsWpXf9t4So0upV1DEcjq8CQQDEKGAzNdgzOoIozE3Z3thIjrmkimXM J/Y3xQJBAMEqZ6syYX/+uRt+any1LADRebCq6UA076Sv1dmQ5HMfPbPuU9d3yOqV j0Fn2H68bX8KkGBzGhhuLmbrgRqr3+SPM/frUj3UyYxns5rnGspRkGB3AkALCbzH 9EAV8Uxn+Jhe5cgAC/hTPPdiwTJD7MpkNCpPuKRwrohytmNAmtIpKipAf0LS61np wtq59ssjBG/a4ZXNn32n78DO0i6zVV5vwf8rv2sf -----END RSA PRIVATE KEY----- $ cat id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop </source> Обратите внимание, что 'ssh-rsa...xahria@mydesktop' это одна строка, а не несколько. Как Вы могли убедиться, ssh-keygen создал два файла: id_rsa и id_rsa.pub. В первом файле хранится приватный ключ, защищенный кодовой фразой, введенной Вами при создании. **НИКОМУ** не давайте копаться в этом файле. Второй файл - Ваш публичный ключ, он не содержит никаких тайн и может быть доступен любому встречному-поперечному. В случае утраты он может быть восстановлен из приватного ключа. ==== Типы ключей SSH ==== При создании ключей Вы указывали опцию -t rsa. Этим параметром мы указываем тип создаваемых ключей. Также возможно создать ключи rsa1, rsa или dsa. Рассмотрим их отличия: {| |style="font-weight:bold;"|Тип |style="font-weight:bold;"|Аргумент |style="font-weight:bold;"|Имя по умолчанию |style="font-weight:bold;"|Протокол |style="font-weight:bold;"|Пример заголовка |- |RSA1 | -t rsa1 |identity |SSH 1 protocol only |1024 35 118118225938285... |- |RSA | -t rsa |id_rsa |SSH 2 protocol only |ssh-dss AAAAB3nzaC1kc3M... |- |DSA | -t dsa |id_dsa |SSH 2 protocol only |ssh-rsa AAAAB3NzaC1yc2E... |} Вы можете изменить имя файла с помощью опции -f filename. Если Вы не определили имя файла, то ключи будут записаны в каталог $HOME/.ssh/ с именем, принятым по умолчанию для данного типа ключа. ==== Разрешение Identity/Pubkey аутентификации на сервере ==== После того, как мы создали ключи, необходимо разрешить данный тип аутентификации на сервере SSH. Сначала определим тип аутентификации - Pubkey или Identity, установив следующие настройки в sshd_config: <source lang="cfc"> # Should we allow Identity (SSH version 1) authentication? RSAAuthentication yes # Should we allow Pubkey (SSH version 2) authentication? PubkeyAuthentication yes # Where do we look for authorized public keys? # If it doesn't start with a slash, then it is # relative to the user's home directory AuthorizedKeysFile .ssh/authorized_keys </source> Приведенные выше значения разрешают аутентификацию Identity/Pubkey для протокола SSH версии 1 и 2, и проверяют наличие публичных ключей в файле $HOME/.ssh/authorized_keys. Проверьте наличие этих строк в файле конфигурации sshd_config (обычно он находится в каталоге /etc/ssh/), при необходимости добавьте и перезапустите сервис. ==== Содержимое файла authorized_keys ==== Файл authorized_keys просто содержит список ключей, по одному в строке. В него мы и пропишем ключ, сгенерированный нами на своей машине. <source lang="bash"> # Copy the RSA Pubkey to the server using scp. # You can use any method you like, including using # copy/paste if it's convenient. $ cd $HOME/.ssh $ scp id_rsa.pub ssh-server:id_rsa_mydesktop.pub xahria@ssh-server's password: (enter password) # Now let's log in and create the authorized_keys file $ ssh ssh-server xahria@ssh-server's password: (enter password) # Create the .ssh dir if it doesn't already exist ssh-server$ mkdir .ssh ssh-server$ chmod 700 .ssh ssh-server$ cd .ssh # Concatenate the RSA Pubkey we just uploaded to # the authorized_keys file. (This will create # if it doesn't already exist.) ssh-server$ cat ../id_rsa_mydesktop.pub >> authorized_keys # Let's check out the file ssh-server$ cat authorized_keys ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAcMJy5nn4ZNcD3L32b7y433Zh2IEAnPt aIsWf4POIKWR9DXiPgr1aGOTtBTgkqRQm4VBiYoEOlXiiOYKTpQ87aSdUXPipn 2dqjGn7OfyxYA7oy7i9j7/hYytkyMGx7ROxqD/2WtzU2SZtjs74s/PjxzyBMsr ff5M09PsqNypoLLLZas= xahria@mydesktop # Make sure permissions are paranoid ssh-server$ chmod 600 authorized_keys # Excellent, let's log out. ssh-server$ exit </source> Прядок действий следующий: копируем публичный ключ RSA на сервер, используя scp или любой другой способ. Создаем файл authorized_keys, если каталога .ssh не существует - создаем. Добавляем публичный ключ RSA в файл authorized_keys. Проверяем, устанавливаем права доступа и выходим. Также можно упростить процедуру используя стандартный скрипт ''ssh-copy-id''. <source lang="bash"> ssh-copy-id -i .id_rsa.pub xahria@ssh-server </source> Пришла пора проверить. что мы наваяли: <source lang="bash"> mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/id_rsa': </source> Ваш SSH клиент будет сначала пробовать пройти аутентификацию по Pubkey/Identity, в случае неудачи - идентификацию по паролю. Он будет искать три имени файлов, заданных по умолчанию, если Вы не указали айл ключа явно и передаст его серверу. Рассмотрим процесс подключения по разделениям: * /usr/bin/ssh соединяется с сервером на порт SSH * Клиент и сервер обмениваются ключами, определяется алгорит м шифрования * Клиент ищет файлы, по умолчанию испрользуемые Pubkey/Identity * Если один из таких файлов был найден, то посылается публичный ключ на сервер и запрашивается аутентификация по этому ключу * Сервер проверяет файл authorized_keys пользователя на наличие публичного ключа и посылает клиенту последовательность, зашифрованную открытым ключом. Если приватный ключ защищен кодовым словом, то /usr/bin/ssh просит его ввести для дешифровки приватного ключа. * Клиент расшифровывает посланную последовательность для подтверждения правильности публичного и приватного ключей * Если расшифровка удалась, то сервер пускает клиента без запроса пароля Unix * Если клиент не может доказать, что это имеет ключ, то он может предложить другие ключи * При отсутствии корректных ключей пользователю будет предложено авторизоваться с помощью авторизации Unix Все это проходит незаметно для пользователя. Если Вы хотите наблюдать за фазами соединения, то используйте ключ -v: <source lang="bash"> mydesktop$ ssh ssh-server OpenSSH_3.8.1p2, SSH protocols 1.5/2.0, OpenSSL 0x009060cf ... debug1: identity file /home/xahria/.ssh/identity type 0 debug1: identity file /home/xahria/.ssh/id_rsa type 1 debug1: Remote protocol version 1.99, remote software version OpenSSH_3.7.1p2 ... debug1: SSH2_MSG_SERVICE_ACCEPT received debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: publickey debug1: Offering public key: /home/xahria/.ssh/id_rsa debug1: Server accepts key: pkalg ssh-rsa blen 149 lastkey 0x601d0 hint 1 debug1: PEM_read_PrivateKey failed debug1: read PEM private key done: type <unknown> Enter passphrase for key '/home/xahria/.ssh/id_rsa': (Enter wrong passphrase) debug1: PEM_read_PrivateKey failed debug1: Next authentication method: keyboard-interactive debug1: Authentications that can continue: publickey,password,keyboard-interactive debug1: Next authentication method: password xahria@ssh-server's password: (Enter Unix password) </source> Для наглядности, в этом примере мы вводим неправильное кодовое слово для дешифровки приватного ключа. Также Вы можете заметить, что были найдены файлы identity и id_rsa, хотя они могут использоваться только с SSHv2. ==== Выбор ключей ==== Если Вы имеете один ключ для каждого типа, то вы можете использовать стандартные имена файлов и ssh-клиент самостоятельно найдет их и использует, но может так случиться, что Вы используете для аутентификации разные файлы: * У Вас есть персональный ключ и ключ группы(например, административный), для различных хостов и пользователей. * У Вас слишком большой список ключей и сервер отбрасывает вас из-за превышения числа попыток авторизации. * Вы хотите использовать специальный ключ, потому как связали с ним специфические особенности - такие как предоставление возможности работать только с командой rsync. Определить используемый ключ можно с помощью опции -i private_key_file: <source lang="bash"> mydesktop$ ssh -i ~/.ssh/special_ssh_key ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Следущая опция создаст в Вашем ~/.ssh/config указание на отображение еспользуемого ключа: <source lang="bash"> mydesktop$ cat ~/.ssh/config Host ssh-server IdentityFile ~/.ssh/special_ssh_key mydesktop$ ssh ssh-server Enter passphrase for key '/home/xahria/.ssh/special_ssh_key': </source> Обратите внимание, что переменная config всегда равна IdentityFile, независимо от того, используется Pubkey или Identity. ==== Безопасность кодовой фразы ==== Ваши приватные ключи могут и должны шифроваться кодовой фразой, так как это оберегает Ваш ключ от компрометации. Даже если Вы установили соответствующие права доступа, но не защитили ключ кодовой фразой, без всяких проблем полюбоваться Вашим ключом сможет пользователь root. Так что не спускайте на тормозах это дело. ===== authorized_keys2 ===== Старые версии OpenSSH использовали два различных публичных ключа для доступа к серверу - authorized_keys для Identities (SSHv1) и authorized_keys2 для Pubkeys (SSHv2). Позже было решено, что это глупо и теперь используется один файл для ключей всех типов, но при отсутствии подходящего ключа будет проверен и authorized_keys2. Более поздние версии OpenSSH могут вполне прекратить поддерживать authorized_keys2 вовсе. Чтобы не думать об этом ограничении, создадим жесткую ссылку authorized_keys2 на файл authorized_keys. <source lang="bash"> ssh-server$ cd .ssh ssh-server$ ls -l -rw------- 1 xahria hatchclan 883 Jan 21 11:52 authorized_keys # make a hard link so they are the same file, just different # file names. ssh-server$ ln authorized_keys authorized_keys2 ssh-server$ ls -l -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys -rw------- 2 xahria hatchclan 883 Jan 21 11:52 authorized_keys2 </source> Так мы удовлетворим потребности любой версии OpenSSH. === Аутентификация на SSH сервере с использованием ssh-agent === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' Никто не любит вводить пароли. Если бы компьютеры, как люди, четко представляли себе, кто они такие и к чему они могут получить доступ, а к чему нет и не заставляли бы каждый раз напрягать клавиатуру... В моей последней статье я показал Вам, как создать SSH Identities/Pubkeys, который может использоваться как альтернатива вводу пароля. Однако, поскольку мы используем кодовую фразу для защиты, то получается, что мы просто поменяли один пароль на другой. Сейчас мы разберем следующую ситуацию: мы возьмем доверительные отношения между хостами, данные нам Identity/Pubkey и для управления ключами будем использовать ssh-agent. ==== Запуск ssh-agent ==== Для запуска ssh-agent необходимо просто дать команду: <source lang="bash"> $ ssh-agent SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921; export SSH_AUTH_SOCK; SSH_AGENT_PID=7922; export SSH_AGENT_PID; echo Agent pid 7922; </source> При запуске агента он выведет на консоль некоторую информацию, которую Вы можете использовать для установки переменных среды. В настоящем примере используется синтаксис Bourne shell. Если Вы используете C-shell, такой как /bin/csh или /bin/tcsh, то переменные отобразились бы по другому. Если ssh-agent не может определить, какую оболочку Вы используете, Вы можете использовать ключи -s или -c соответственно для Bourne shell/C-shell. Программа /usr/bin/ssh использует переменную среды SSH_AUTH_SOCK, чтобы знать, как войти в контакт с запущеным Вами ssh-агентом. Эту переменную необходимо определить. Самый простой способ сделать это - использовать функцию оболочки eval, <source lang="bash"> # Note: no ssh agent related variables yet $ set | grep SSH_ # Run it inside backticks, which will capture the output and # pass it to 'eval' which will run it in your current shell. $ eval `ssh-agent` Agent pid 7943 # And now those variables are in your shell, ready to use. $ set | grep SSH_ SSH_AUTH_SOCK=/tmp/ssh-xoGi7942/agent.7942 SSH_AGENT_PID=7943 </source> Если Вам известна переменная SSH_AGENT_PID, то Вы можете завершить работу агента с помощью команды ssh-agent -k, хотя и команда kill по прежнему неплохо работает. '''''Примечание:''' в Fedora Linux, работая в X сессии запущеной из GDM можно не заботится запуском ssh-agent - система делает это по умолчанию.'' Просто добавьте в ssh-agent необходимые ключи (см. ниже). ==== Загрузка ключей в агент ==== Сам по себе агент не очень полезен, пока в него не загружены ключи. Все управление ключами происходит через команду ssh-add, если Вы запустите ее без аргументов, то она загрузит "стандартные ключи" из $HOME/.ssh/identity, $HOME/.ssh/id_rsa и $HOME/.ssh/id_dsa. Если Ваши ключи защищены кодовой фразой (по другому и быть не может!), то ее потребуется ввести для декодирования ключей. Если кодовая фраза одинакова для всех ключей, то и ввести ее необходимо только один раз. Итак: <source lang="bash"> $ ps -fp $SSH_AGENT_PID UID PID PPID C STIME TTY TIME CMD lainee 7943 1 0 15:52 ? 00:00:00 ssh-agent # Are there any keys in there currently? # 'ssh-add -l' (list) will show us. $ ssh-add -l The agent has no identities. # Let's import the default keys. In our case, we have # each key protected with the same passphrase, which is # why it only asks once. $ ssh-add Enter passphrase for /home/lainee/.ssh/id_rsa: Identity added: /home/lainee/.ssh/id_rsa (/home/lainee/.ssh/id_rsa) Identity added: /home/lainee/.ssh/id_dsa (/home/lainee/.ssh/id_dsa) Identity added: /home/lainee/.ssh/identity (lainee@desktop) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:c2:d0:d8:66:8f:a9:67:db:c0 id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) # And let's add a few one-off keys also $ ssh-add ssh-keys/id* Enter passphrase for id_dsa.webrooters: Identity added: id_dsa.webrooters (id_dsa.webrooters) Enter passphrase for identity.webrooters: Identity added: identity.webrooters (webrooters@my_company.com) # What's in our agent now? $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Итак, мы использовали ssh-add для добавления ключей по умолчанию, просмотра списка ключей и задания выборочных ключей. Обратим взор к следующему параграфу: ==== Удаление ключей из агента ==== Вы можете использовать команду ssh-agent -d для удаления ключей: <source lang="bash"> # List keys $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 1a:c2:d0:d8:66:23:d5:2b:20:02:a4:8f:a9:67:db:c0 id_dsa.webrooters (DSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) # Remove the key that came from the file ~/.ssh/id_dsa.webrooters # from the agent. (Does not remove the file from the directory.) $ ssh-add -d ~/.ssh/id_dsa.webrooters Identity removed: id_dsa.webrooters (id_dsa.webrooters.pub) # List keys again $ ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1 </source> Зачем удалять ключи из агента? Может быть несколько причин: * Вы добавляете временный ключ, который будет действовать в течение блиайшего часа и хотите удалить его после работы из-за приступа паранойи. * Вы перешли на протокол SSHv2, и ваши ключи RSA1 больше не нужны. * У вас в агенте содержится слишком много ключей и Вы удаляете наименее часто используемые. Почему это может понадобиться - смотрите ниже. ==== Слишком много ключей? ==== Серверы SSH позволяют Вам подтверждать свою подлинность конечное число раз. Каждая неудачная попытка увеличивает значение счетчика и при некотором критическом значении числа ключей, Вас вообще может перестать пускать на сервер из-за превышения числа попыток авторизации. Есть несколько способов решения данной проблемы: * Если у Вас имеются устаревшие ключи, то удалите их с помощью команды ssh-agent -d filename. * Вы можете использовать аутентификацию по паролю, временно отключив переменную SSH_AUTH_SOCK: <source lang="bash"> $ SSH_AUTH_SOCK='' ssh user@myserver ... </source> Или Вы можете внести необходимые опции в ~/.ssh/options, а затем выполнить команду: <source lang="bash"> # Using the configuration file: $ head ~/.ssh/config Host myserver # Allow SSHv1 Identity authentication? RSAAuthentication no # Allow SSHv2 Pubkey authentication? PubkeyAuthentication no $ ssh myserver </source> или <source lang="bash"> # Put it all on the command line. # Or better yet, put it in a shell script or an alias... $ ssh -o'RSAAuthentication=no' -o 'PubkeyAuthentication=no' user@myserver ... </source> * Если Вы хотите использовать авторизацию по ключу, но он находится слишком далеко в списке и сервер SSH не пускает Вас, то <s>Вам не повезло. Если у кого-либо есть идеи относительно этой проблемы, то прошу поделиться.</s> переносим ключи в отдельную директорию, и вызываем явно с помощью IdentityFile <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config Host portal HostName portal.zone.local IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 </source> в случае использования ssh-agent приходится прибегать к дополнительным ухищрениям, ибо он всё равно норовит использовать все известные ему ключи. <source lang="bash"> # Using the configuration file: $ cat ~/.ssh/config HashKnownHosts yes RSAAuthentication no Host portal HostName portal.zone.local PubkeyAuthentication yes IdentityFile ~/.ssh/tmp/id_rsa_4096_portal Port 22335 Host gw HostName 10.1.12.1 PubkeyAuthentication yes IdentityFile ~/.ssh/tmp/id_rsa_4096_gw Host * PasswordAuthentication yes PubkeyAuthentication no </source> подробности в man ssh_config ==== Мероприятия по защите агента ==== ssh-agent создает unix domain socket и затем слушает все подключения от /usr/bin/ssh на этом сокете. В принципе Ваши ключи могут оказаться доступны любому, кто подключится к этому сокету. При запуске агента, создается временный каталог /tmp/, с установленными правами доступа (0700) и уже внутри него создается сокет с правами (0600). Однако пользователь root по преженму имеет доступ к этому сокету, также он может произвольным образом поменять права доступа к сокету. <source lang="bash"> root# set | grep SSH_ root# ssh-add -l Cannot connect to your agent. root# ls -l /tmp/ssh-*/* srwx------ 1 lainee alandra 0 Jan 21 11:51 /tmp/ssh-OqdW7921/agent.7921 root# SSH_AUTH_SOCK=/tmp/ssh-OqdW7921/agent.7921 root# export SSH_AUTH_SOCK root# ssh-add -l 1024 79:e9:6f:99:a3:2d:ae:f3:bd:3a:87:6c:ed:4e:bb:ad lainee@desktop (RSA1) 1024 23:d5:2b:20:02:a4:1a:a9:67:db:c0:c2:d0:d8:66:8f id_dsa (DSA) 1024 e8:17:67:cf:9c:24:2b:59:ad:48:1d:e6:ea:d6:d9:3d id_rsa(RSA) 1024 ae:f3:bd:3a:87:79:e9:6f:99:4e:bb:ad:a3:2d:6c:ed webrooters@my_company.com (RSA1) </source> Это плохая новость. Хорошая новость состоит в том, что ключи пригодны для использования только при запущеном агенте, root мог бы использовать агент для авторизации на других системах, но нельзя получить доступ к ключам непосредственно. Это значит, что нельзя вот так просто взять ключи и использовать их на другой машине. Можем ли мы воспрепятствовать root получить доступ к нашему агенту, даже с учетом того, что он не обращает внимания на права доступа? Да, можем, если будем использовать опцию -c при импорте ключей в агента. В этом случае будет сделан запрос на подтверждение при каждой попытке авторизации на сервере с помощью программы ssh-askpass. Эта программа выскочит на вашем X11 рабочем столе и будет просить о подтверждении каждый раз перед использованием ключа. Примерно в этой точке Вы должны понять, что мы заведомо проиграли. root может обратиться к Вашему X11 рабочему столу и вообще ко всем Вашим процессам. Если Вы не доверяете root, то Ваше положение не завидно. ==== Перенаправление агента ==== Одна из хороших особенностей агента заключается в том, что он может следовать за Вами с машины на машину. Значение по умолчанию в более новых версиях OpenSSH должно отключить форвардинг агента по умолчанию, так что Вы должны сами для себя решить, хотите ли Вы этого или нет. Как фактически работает форвардинг пакетов? Короче говоря, агент выполняется на одной машине, и каждый раз Вы, соединяясь с SSH сервером с форвардингом агента, сервер создает 'туннель' назад через SSH подключение с агентом, так что он становится доступен для любых дальнейших SSH подключений. Скажем, мы находимся на нашем рабочем столе, мы соединяемся по SSH с сервером управления с возможностью форвардинга агента, и с сервера управления идем по SSH на наш почтовый сервер. Что получается: * /usr/bin/ssh с Вашей машины соединяется с сервером управления, аутентифицируется и запрашивает форвардинг агента. * /usr/sbin/sshd на сервере управления открывает сокет /tmp/ssh-XXXXXXX/agent.~##### и устанавливает переменную SSH_AUTH_SOCK * Стартует демон SSH и вы начинаете работу в шелле на сервере управления. * Когда Вы решаете соединиться по SSH к почтовому серверу, программа/usr/bin/ssh (на сервере управления) видит переменную среды SSH_AUTH_SOCK и соединяется с локальным сокетом. * SSH демон, который является другим концом сокета /tmp/ssh-XXXXXXX/agent.~#####, просто перегоняет данные от/usr/bin/ssh на сервере управления к и от ssh-agent, выполняющегося на вашем рабочем столе. Все операции с ключами выполняются на агенте, который выполняется на Вашем рабочем столе. * Агент аутентифицируется на сервере. Используя форвардинг агента Вы сохраните время и клавиатуру. Также обратите внимание, что так Ваш агент доступен любой машине, с которой Вы соединяетесь. Соответственно, и пользователю root этой машины. Будьте бдительны! ==== Глобальное отключение перенаправления ==== Если у Вас нет серьезных причин разрешать перенаправление, то проверьте соответствующий параметр в глобальном файле конфигурации ssh_config, который обычно расположен в /etc/ или /etc/ssh/ . Должно быть: <source lang="cfc"> Host * ForwardAgent no </source> ==== Перенаправление агента из командной строки ==== Для перенаправлении агента из командной строки, используйте опцию -A: <source lang="bash"> desktop$ ssh -A user@remotehost </source> Опция -a отключает форвардинг, что является значением по умолчанию. ==== Перенаправление агента из файла конфигурации ==== Если у Вас есть хост, на котором Вы всегда используете перенаправление и Вы не хотите постоянно использовать флаг -A, то Вы можете сделать для этих хостов записи в ~/.ssh/config: <source lang="bash"> $ cat ~/.ssh/config Host shellserver ForwardAgent yes Host management-server ForwardAgent yes Host * ForwardAgent no </source> Хотя запись Host * должна иметься в глобальном файле конфигурации, я предпочитаю иметь ее и в локальном файле. ==== Прочие возможности ==== Есть еще несколько дополнительных флагов для ssh-add и ssh-agent: <source lang="bash"> ssh-add -L </source> Выведет не заголовок, а ключ полностью. Может быть полезным при обьединении их в одном файле ~/.ssh/authorized_keys <source lang="bash"> ssh-add -D </source> Удаляет ВСЕ ключи из агента <source lang="bash"> ssh-add -x </source> Блокирует агента до ввода пароля. Заблокированный агент не пригоден для использования. Хороший способ обезопасить агента, когда Вы на ночь уходите с работы домой. Для разблокировки используйте ssh-add -X. <source lang="bash"> ssh-add -t seconds filename </source> Указывает агенту отказываться от ключа после указанного периода времени. Хороший путь хранения временных ключей. <source lang="bash"> ssh-agent -t seconds </source> Определяет время жизни ключей после запуска агента. === Перенаправление портов в SSH === ''by Brian Hatch'' ''Перевод: Сгибнев Михаил'' ==== Введение ==== Обычно SSH используется для регистрации на удаленном сервере с целью проведения технического обслуживания, чтения почты, управления сервисами и тому подобных задач администрирования. SSH также предоставляет некоторые другие сервисы, такие как копирование файлов (используя scp и sftp) и удаленное выполнение команд (используя ssh с указанием команды после имени хоста при выполнении из командной строки). Всякий раз используя SSH для соединения одной машины с другой, мы создаем безопасный сеанс связи. Вы можете ознакомиться с другими статьями, связанными с настройкой и эксплуатированием SSH: SSH Host Key Protection, SSH User Identities и SSH and ssh-agent. SSH также имеет замечательную возможность перенаправления портов, что позволяет нам создать безопасный сеанс связи и затем туннелировать через него произвольные подключения TCP. Туннелирование создается очень легко и не требует знаний программирования, что делает его очень привлекательным. В этой статье мы детально рассмотрим перенаправление портов в SSH, поскольку это - очень полезная, но часто неправильно истолковываемая технология. Перенаправление портов может использоваться в несметном количестве мест. Давайте подкрепим это утверждение примером. ==== Пример локального перенаправления ==== Предположим, что на вашей машине имеется почтовый клиент и вы получаете письма с почтового сервера по протоколу POP (Post Office Protocol), порт 110. Вы хотите защитить ваше POP соединение с целью препятствовать перехвату пароля или почты (Некоторые POP серверы поддерживают дополнительные методы авторизации, типа S/Key или обмен запросами). В обычном случае, клиент создает сессию с портом TCP за номером 110, вводится имя пользователя и пароль и скачиваются письма. Давайте просто попробуем использовать telnet или nc: <source lang="bash"> xahria@desktop$ nc mailserver 110 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies +OK User successfully logged on. LIST +OK 48 1420253 1 1689 2 1359 3 59905 ... 47 3476 48 3925 . QUIT +OK SuperDuper POP3 mail server signing off. xahria@desktop$ </source> Мы можем перенаправить эту TCP-сессию внутрь SSH-сессии используя перенаправление портов. Если мы имеем доступ по SSH к машине, на которой запущен требуемый нам сервис (в нашем случае POP, порт 110), то цель близка и приятна. Также, для наших целей мы можем использовать любой SSH-сервер в сети, из которой доступен целевой почтовый сервер. Так давайте и рассмотрим ситуацию, в которой мы не имеем доступа к почтовому серверу по SSH, но можем соединиться с помощью защищенного протокола с другим сервером той же сети и создать туннель для нашего сеанса POP. <source lang="bash"> # first, show that nothing's listening on our local machine on port 9999: xahria@desktop$ nc localhost 9999 Connection refused. xahria@desktop$ ssh -L 9999:mailserver:110 shellserver xahria@shellserver's password: ******** xahria@shellserver$ hostname shellserver </source> С другого терминала вашей машины соединитесь с портом 9999 своей же машины(localhost). <source lang="bash"> xahria@desktop$ nc localhost 9999 +OK SuperDuper POP3 mail server (mailserver.my_isp.net) ready. USER xahria +OK PASS twinnies ... </source> Прежде чем мы соединились с shellserver по SSH ничто не слушало на порту 9999. Именно технологии туннелирования мы обязаны волшебному появлению на порту 9999 нашей локальной машины приглашения почтового сервера. Давайте подробно разберем предложенный пример: * Вы запустили клиент SSH /usr/bin/ssh из командной строки * Клиент регистрируется на удаленной машине используя один из методов авторизации (пароль или ключ) * SSH клиент занимает определенный вами локальный порт 9999 на кольцевом интерфейсе 127.0.0.1 (loopback) * Открытая же сессия с удаленной машиной вполне пригодна для использования, вы можете архивировать файлы или удалить /etc/shadow... * Когда же вы соединяетесь с локальной машиной 127.0.0.1 на порт 9999, то клиентская программа /usr/bin/ssh принимает соединение. * SSH клиент информирует сервер через шифрованный канал о необходимости создать соединение с mailserver, порт 110 * Клиент принимает все данные, посылаемые на порт и посылает их серверу через шифрованный туннель, который расшифровывает их и передает их открытым текстом на mailserver, порт 110 * При завершении сеанса любой из точек, туннель также прекращает существование. ==== Отладка перенаправления ==== Давайте рассмотрим этот механизм, используя опцию отладки: <source lang="bash"> xahria@desktop$ ssh -v -L 9999:mailserver:110 shellserver debug1: Reading configuration data /etc/ssh/ssh_config debug1: Rhosts Authentication disabled, originating port will not be trusted. debug1: Connecting to shellserver [296.62.257.251] port 22. debug1: Connection established. debug1: identity file /home/bri/.ssh/identity type 0 debug1: identity file /home/bri/.ssh/id_rsa type 1 debug1: identity file /home/bri/.ssh/id_dsa type 2 ... debug1: Next authentication method: password xahria@shellserver's password: ******** debug1: Authentication succeeded (password). debug1: Connections to local port 9999 forwarded to remote address localhost:110 debug1: Local forwarding listening on 127.0.0.1 port 9999. debug1: channel 0: new [client-session] debug1: Entering interactive session. debug1: channel 0: request pty-req debug1: channel 0: request shell xahria@shellserver$ </source> Как вы видите, порт 9999 резервируется для открытия туннеля. В настоящее время мы не соединяемя с этим портом, поэтому туннель не открыт. Вы можете использовать escape-последовательность ~# для просмотра соединений. Эта последовательность работает только после символа перевода каретки, поэтому вам придется сделать так: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) xahria@shellserver$ </source> Видим, что в системе открыта только одна SSH-сессия, используя именно ее, мы вводим текущие команды unix. Так, а теперь попробуем выполнить команду telnet localhost 9999 и просмотрим состояние соединений: <source lang="bash"> xahria@shellserver$ (enter) xahria@shellserver$ ~# The following connections are open: #1 client-session (t4 r0 i0/0 o0/0 fd 5/6) #2 direct-tcpip: listening port 9999 for mailserver port 110, connect from 127.0.0.1 port 42789 (t4 r1 i0/0 o0/0 fd 8/8) </source> И что же мы видим? Таки туннель был создан! Мы можем воспользоваться утилитами netstat или lsof, чтобы увидеть соединение с 127.0.0.1, порт 42789 на 127.0.0.1, порт 9999. ==== Пример удаленного перенаправления ==== Перенаправление в SSH, как и известная палка, имеет два конца. Выше был приведен пример локального туннелинга, когда ssh-клиент принимает входящие подключения. Удаленное перенаправление и есть второй конец палки: создание туннеля инициализируется на стороне сервера. Приведем классический пример использования удаленного перенаправления.Вы весь в работе, а на выходные VPN доступ закрывается на техническое обслуживание. Однако, у вас действительно имеется очень важная работа, но вы предпочитаете делать ее дома, вместо того, что бы торчать в офисе в выходные. И по SSH к вашей рабочей машине никак не пробиться, ибо наличествует фаервол. Значит, перед уходом домой, сделаем пару движений. Ваш ~/.ssh/config должен содержать такие строки: <source lang="bash"> lainee@work$ tail ~/.ssh/config Host home-with-tunnel Hostname 204.225.288.29 RemoteForward 2222:localhost:22 User laineeboo </source> <source lang="bash"> lainee@work$ ssh home-with-tunnel laineeboo@204.225.228.29's password: ******** laineeboo@home$ ping -i 5 127.0.0.1 PING 127.0.0.1 (127.0.0.1): 56 data bytes 64 bytes from 127.0.0.1: icmp_seq=0 ttl=255 time=0.1 ms 64 bytes from 127.0.0.1: icmp_seq=1 ttl=255 time=0.2 ms 64 bytes from 127.0.0.1: icmp_seq=2 ttl=255 time=0.2 ms ... </source> Мы утановили в файле конфигурации SSH опцию RemoteForward, она то и позволяет осуществить туннелирование (в случае использования командной строки используйте опцию -R). Для того, чтобы удостовериться, что наше соединение не блокируется системой сетевой защиты, выполним команду ping: Вечером на домашней машине удостоверимся в удачном исходе дела: <source lang="bash"> laineeboo@home$ last -1 laineeboo pts/18 firewall.my_work.com Tue Nov 23 22:28 still logged in laineeboo@home$ ps -t pts/18 PID TTY TIME CMD 3794 pts/18 00:00:00 ksh 4027 pts/18 00:00:00 ping -i 5 127.0.0.1 </source> В результате, все соединения на порт 2222 вашей домашней машины будут туннелированы назад через корпоративный фаервол на порт 22 вашей машины на работе. Сделаем же сиё нехитрое действо: <source lang="bash"> laineboo@home$ ssh -p 2222 lainee@localhost lainee@localhost's password: ******** lainee@work$ </source> ==== Port Forwarding Cheat Sheet ==== Помнить куда что перенаправляется - довольно непростая задача. Данная таблица должна помочь. '''Локальное перенаправление''' {| |Опции командной строки | -L local_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |LocalForward local_listen_port destination_host:destination_port |+ |local_listen_port is on |SSH client loopback interface |+ |destination_host is contacted from |SSH server host |} '''Удаленное перенаправление''' {| |Опции командной строки | -R remote_listen_port:destination_host:destination_port |+ |Строки в файле конфигурации |RemoteForward remote_listen_port:destination_host:destination_port |+ |remote_listen_port is on |SSH server loopback interface |+ |destination_host is contacted from |SSH client host |} Перенаправление может запутать, так как мы привыкли представлять сессию как составляющую четырех вещей: IP адрес источника, порт источника и IP адрес назначения, порт назначения. ==== Безопасность перенаправления портов ==== Перенаправление занимает порт на ssh клиенте(локальное перенаправление) или на ssh сервере (удаленное перенаправление). По умолчанию, этот порт будет доступен только на кольцевом интерфейсе 127.0.0.1, это означает, что туннель будет доступен только локальному пользователю. Если Вы не хотите предоставлять доступ к туннелю кому-либо еще, то оставьте все как есть. В противном случае, используйте один из нижеследующих вариантов: {| | |Command line option |Configuration file option |+ |LocalForwards | -g |GatewayPorts yes (in ~/.ssh/config or /etc/ssh/ssh_config) |+ |RemoteForwards |(none available) |GatewayPorts yes (in /etc/sshd_config) |} Другая важная вещь, которую Вы должны помнить - то, что поток данных шифруется только на участке между ssh клиентом b ssh сервером. Если определенный вами destination_host – не localhost, то то часть трафика не будет зашифрована. Рассмотрим пример: <source lang="bash"> desktop$ ssh -L 8080:www.example.com:80 somemachine </source> Любое соединение с localhost:8080 будет зашифровано на участке от desktop до somemachine, но пойдет открытым текстом от somemachine до www.example.com. Если это соответствует вашей концепции безопасности, то проблемы нет. ---- Источники: * http://www.opennet.ru/base/sec/ssh_pubkey_auth.txt.html === Советы по SSH === Стандартная настройка большинства систем оставляет порт 22 общедоступным для любых подключений извне. Если ваш пароль пользователя не слишком сложен - вы очень скоро станенте объектом атаки и чем слабее пароль, тем успешнее будет взлом. Есть несколько советов которые помогут уменьшить риск компрометации вашей системы. ==== DenyHosts - блокируем подбор пароля ==== '''DenyHosts''' анализирует лог-файл, и при многократной ошибке авторизации добавляет атакующий хост в ''/etc/hosts.deny'' . Установка проста: <source lang="bash"> # yum install denyhosts # chkconfig denyhosts on # service denyhosts start </source> Настройки по умолчанию вполне достаточны. Если же есть желание более тонкой подстройки, правим неплохо комментированный файл ''/etc/denyhosts.conf'' ==== Нестандартный порт сервера ==== Изменив порт который слушает '''ssh''' демон, мы отсечем большинство попыток атак. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> Port 22022 </source> и перезапускаем ssh сервер: <source lang="bash"> # service sshd restart </source> На клиентской системе придется использовать параметр ''-p'' для '''ssh''': <source lang="bash"> $ ssh -p 22022 user@ssh-server </source> и ''-P'' для '''scp''' (а также явно указывать порт в другом ПО, например '''gftp''', '''lftp''' при использовании sftp-протокола ): <source lang="bash"> $ scp -P 22022 file.txt user@ssh-server:public_dir/ </source> Клиентская машина не используется для разового соединения с удаленым сервером, то можно прописать соответствие хоста и порта в файл конфигурации пользователя (''~/.ssh/config'') или системы (''/etc/ssh/ssh_config''): <source lang="cfc"> Host ssh-server Port 22022 </source> Устанавливаем ограничение на доступ к файлу конфигурации: <source lang="bash"> $ chmod 600 ~/.ssh/config file </source> Не забываем открыть новый порт '''ssh''' в конфигурации '''iptables'''. ==== Отключаем вход для root ==== Запретив вход для '''root''' по '''ssh''', мы ограничим привелегии атакущего. Чтобы получить полный контроль над системой ему потребуется дополнительно узнать пароль непривилегерованого пользователя. Для этого в файл ''/etc/ssh/sshd_config'' добавляем строку: <source lang="cfc"> PermitRootLogin no </source> и перегружаем ssh сервер: <source lang="bash"> # service sshd reload </source> === SSH-клиенты и оболочки === * GNU/Linux: [http://utils.kde.org/projects/kdessh/ kdessh], lsh-client, [http://www.openssh.com/ openssh-client], [http://putty.org.ru/ PuTTY] * MS Windows и Windows NT: [http://putty.org.ru/ PuTTY], [http://www.vandyke.com/products/securecrt/ SecureCRT], ShellGuard, Axessh, ZOC, SSHWindows, ProSSHD * MS Windows Mobile: [http://www.pocketputty.net/ PocketPuTTy], mToken, sshCE, PocketTTY, OpenSSH, PocketConsole * Mac OS: NiftyTelnet SSH * Symbian OS: [http://s2putty.sourceforge.net/ PuTTY] * Java: MindTerm, AppGate Security Server * J2ME: MidpSSH * iPhone: [http://www.instantcocoa.com/products/pTerm/ pTerm], i-SSH, ssh (в комплекте с Terminal) [[Category:Статьи]] 235f42281a29134c9172ff88cf7180e5b6ecaf55 Сборка пакетов rpm 0 94 487 194 2010-05-12T17:53:34Z 188.134.38.14 0 wikitext text/x-wiki {{Суперпользователь}} == Подготовка == Для правильной сборки пакетов нам понадобиться mock. Для установки выполняем следующее: <source lang="bash"> # yum install mock </source> Mock позволяет собирать пакеты в chroot от простого пользователя (без прав root), причём определяется автоматически какие пакеты нужны для сборки[http://medobot.ru]. Для того, чтобы пользователь мог запускать mock необходимо добавить пользователя или пользователей в группу mock: <source lang="bash"> # usermod -a -G mock <user> </source> Не забываем, что после добавления в группу, необходимо пройти заново авторизацию. == Сборка == Для сборки нам нужен готовый src.rpm. Запуск сборки происходит по команде: <source lang="bash"> $ mock -r fedora-8-i386 rebuild package-1.2-3.src.rpm </source> где <code>fedora-8-i386</code> - профиль для сборки. Список профилей доступен по <code>/etc/mock</code>. Если необходимо просматривать установку в реальном режиме, то используйте параметр <code>-v</code> (verbose)[http://hotturism.ru]. Первый запуск обычно достаточно долгий, т.к. создаётся основное дерево для сборки. Но последующие запуски будут быстрее, т.к. используется кэш[http://turzalet.ru]. == Дополнительные опции Mock == Вы можете добавлять и менять репозитории в профиле. Так же Вы можете добавить прокси сервер, если доступ в Интернет проходит только через прокси. Просто добавьте после строк конфигурации и перед репозиториями: <source lang="httpd"> proxy=http://localhost:3128/ </source> Есть возможность задавать значение макросов rpm. при помощи добавления в тот же профиль после конфигурационных строк, например: <source lang="httpd"> config_opts['macros']['%packager'] = "FedoraMD.org Project" config_opts['macros']['%vendor'] = "FedoraMD.org Project" </source> или заданием параметра <code>--define "packager FedoraMD.org Project" --define "vendor FedoraMD.org Project"</code> при вызове mock. По умолчанию собранные пакеты и логи находятся в /var/lib/mock. [[Category:Установка и настройка]] [[Category:Администрирование]] 62ef618275c2cedcb3cf797f9c8db2d2130f51d1 497 487 2010-05-12T19:04:43Z VasileVsx 2 Anularea modificărilor efectuate de către [[Special:Contributions/188.134.38.14|188.134.38.14]] ([[User talk:188.134.38.14|discuţie]]) şi revenire la ultima versiune de către [[User:OlegA|OlegA]] wikitext text/x-wiki {{Суперпользователь}} == Подготовка == Для правильной сборки пакетов нам понадобиться mock. Для установки выполняем следующее: <source lang="bash"> # yum install mock </source> Mock позволяет собирать пакеты в chroot от простого пользователя (без прав root), причём определяется автоматически какие пакеты нужны для сборки. Для того, чтобы пользователь мог запускать mock необходимо добавить пользователя или пользователей в группу mock: <source lang="bash"> # usermod -a -G mock <user> </source> Не забываем, что после добавления в группу, необходимо пройти заново авторизацию. == Сборка == Для сборки нам нужен готовый src.rpm. Запуск сборки происходит по команде: <source lang="bash"> $ mock -r fedora-8-i386 rebuild package-1.2-3.src.rpm </source> где <code>fedora-8-i386</code> - профиль для сборки. Список профилей доступен по <code>/etc/mock</code>. Если необходимо просматривать установку в реальном режиме, то используйте параметр <code>-v</code> (verbose). Первый запуск обычно достаточно долгий, т.к. создаётся основное дерево для сборки. Но последующие запуски будут быстрее, т.к. используется кэш. == Дополнительные опции Mock == Вы можете добавлять и менять репозитории в профиле. Так же Вы можете добавить прокси сервер, если доступ в Интернет проходит только через прокси. Просто добавьте после строк конфигурации и перед репозиториями: <source lang="httpd"> proxy=http://localhost:3128/ </source> Есть возможность задавать значение макросов rpm. при помощи добавления в тот же профиль после конфигурационных строк, например: <source lang="httpd"> config_opts['macros']['%packager'] = "FedoraMD.org Project" config_opts['macros']['%vendor'] = "FedoraMD.org Project" </source> или заданием параметра <code>--define "packager FedoraMD.org Project" --define "vendor FedoraMD.org Project"</code> при вызове mock. По умолчанию собранные пакеты и логи находятся в /var/lib/mock. [[Category:Установка и настройка]] [[Category:Администрирование]] 9126808b8f3055ba8a172db6a037f3ba7fd30fc3 VMware FAQ 0 100 488 364 2010-05-12T17:54:18Z 188.134.38.14 0 wikitext text/x-wiki {{Суперпользователь}} == Скачал rpm пакет, установил, а VMware Workstation не запускаеться, почему? == Для корректной конфигурации необходмо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте от root комманду: <source lang="bash"> #/usr/bin/vmware-config.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == vmware-config.pl завершается с ошибками, компилятор и исходники ядра установлены == Это случается если используется более новое ядро неподдерживаемое VMware Workstation. Следует обновить конфигуратор и модули ядра. Обновление, архив с именем ''vmware-any-any-updateXXX.tar.gz'' (где вместо XXX версия обновления), можно найти [http://knihovny.cvut.cz/ftp/pub/vmware/ здесь] или в приложениях к данной странице. Скачиваем архив во временный каталог <code>/tmp</code>). Для корректной конфигурации необходимо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте команды[http://nedoleteli.ru]: <source lang="bash"> $ cd /tmp $ tar xf vmware-any-any-update*.tar* $ cd vmware-any-any-update*[0-9][0-9] # ./runme.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == Не могу печатать напрямую через порт LPT. Почему? == Это происходит из-за того: 1. у Вас нет прав на устройство /dev/parport* 2. драйвер ядра использует данное устройство. Для решения данной проблемы рекомендую создать два shell-файла... предположим один - print_start.sh, другой print_stop.sh <source lang="bash"> #!/bin/sh # print_start.sh # Start print driver (after VMware) su -c 'chmod 777 /dev/parport0 \ /sbin/modprobe lp' </source> <source lang="bash"> #!/bin/sh # print_stop.sh # Stop print driver (before VMware) su -c '/sbin/rmmod lp' </source> Перед запуском VMware Workstation выполняем print_stop.sh, после окончания работы запускаем print_start.sh. Не забудьте в конфигурации указать LPT порт и устройство на которое надо перенаправлять запросы. == Почему скорость передачи данных по сети такая низкая? == Как показа практика, все типы подключения медленные, корме hostonly. Рекомендуется использовать именно этот тип, если скорость критична. Не забывайте, что с помощью [[Настройка NATa]] Вы сможете настроить NAT. Кстати, hostonly + iptables (NAT) работают быстрее, чем использовать в VMware тип подключения NAT[http://sweet-news.ru]. == Начиная с ядра 2.6.24 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 116 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update-116.tgz vmware-any-any-update-116.tgz] == Начиная с ядра 2.6.25 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 117 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update117b.tgz vmware-any-any-update117b.tgz] При запуске runme.pl отвечать '''[no]''' на вопросы о перезаписи[http://dn-fun.ru]. [[Category:Программное обеспечение]] [[Category:VMware]] fb652e696a30e33536f205fcd008232934dde6dd 498 488 2010-05-12T19:04:49Z VasileVsx 2 Anularea modificărilor efectuate de către [[Special:Contributions/188.134.38.14|188.134.38.14]] ([[User talk:188.134.38.14|discuţie]]) şi revenire la ultima versiune de către [[User:OlegA|OlegA]] wikitext text/x-wiki {{Суперпользователь}} == Скачал rpm пакет, установил, а VMware Workstation не запускаеться, почему? == Для корректной конфигурации необходмо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте от root комманду: <source lang="bash"> #/usr/bin/vmware-config.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == vmware-config.pl завершается с ошибками, компилятор и исходники ядра установлены == Это случается если используется более новое ядро неподдерживаемое VMware Workstation. Следует обновить конфигуратор и модули ядра. Обновление, архив с именем ''vmware-any-any-updateXXX.tar.gz'' (где вместо XXX версия обновления), можно найти [http://knihovny.cvut.cz/ftp/pub/vmware/ здесь] или в приложениях к данной странице. Скачиваем архив во временный каталог <code>/tmp</code>). Для корректной конфигурации необходимо чтобы были установлены исходники Вашего ядра с заголовками (kernel-devel, kernel-headers). Если установлены, то запускайте команды: <source lang="bash"> $ cd /tmp $ tar xf vmware-any-any-update*.tar* $ cd vmware-any-any-update*[0-9][0-9] # ./runme.pl </source> и следуйте инструкциям. После этого VMware должен запуститься. == Не могу печатать напрямую через порт LPT. Почему? == Это происходит из-за того: 1. у Вас нет прав на устройство /dev/parport* 2. драйвер ядра использует данное устройство. Для решения данной проблемы рекомендую создать два shell-файла... предположим один - print_start.sh, другой print_stop.sh <source lang="bash"> #!/bin/sh # print_start.sh # Start print driver (after VMware) su -c 'chmod 777 /dev/parport0 \ /sbin/modprobe lp' </source> <source lang="bash"> #!/bin/sh # print_stop.sh # Stop print driver (before VMware) su -c '/sbin/rmmod lp' </source> Перед запуском VMware Workstation выполняем print_stop.sh, после окончания работы запускаем print_start.sh. Не забудьте в конфигурации указать LPT порт и устройство на которое надо перенаправлять запросы. == Почему скорость передачи данных по сети такая низкая? == Как показа практика, все типы подключения медленные, корме hostonly. Рекомендуется использовать именно этот тип, если скорость критична. Не забывайте, что с помощью [[Настройка NATa]] Вы сможете настроить NAT. Кстати, hostonly + iptables (NAT) работают быстрее, чем использовать в VMware тип подключения NAT. == Начиная с ядра 2.6.24 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 116 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update-116.tgz vmware-any-any-update-116.tgz] == Начиная с ядра 2.6.25 vmware-config.pl завершается с ошибкой. Что делать? == Необходимо использовать патч версии не меньше 117 [http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update117b.tgz vmware-any-any-update117b.tgz] При запуске runme.pl отвечать '''[no]''' на вопросы о перезаписи. [[Category:Программное обеспечение]] [[Category:VMware]] cf455d7d572a4e24910b4820f6387ec45d8ca406 Установка и настройка Apache PHP MySQL 0 61 489 147 2010-05-12T17:55:12Z 188.134.38.14 0 wikitext text/x-wiki {{Суперпользователь}} == Apache == '''Apache HTTP-сервер''' (по-русски обычно произносят Апа&#769;чи или Апа&#769;ч) — это веб-сервер, с открытым исходным кодом. С апреля 1996 это самый популярный HTTP-сервер в Интернете: в мае 1999 года он работал на 57 % веб-серверов, в августе 2004 на 67 %. Основными достоинствами Apache считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т. д. Поддерживает IPv6. Недостатком наиболее часто называется отсутствие удобного стандартного интерфейса для администратора. Сервер был написан в начале 1995 года и считается, что его имя восходит к шуточному названию «a patchy» (англ. заплаточный), так как он устранял ошибки популярного тогда сервера Всемирной паутины NCSA HTTPd 1.3. В дальнейшем, с версии 2.х сервер был переписан заново и теперь не содержит кода NCSA, но имя осталось. На данный момент разработка ведется в ветке 2.2, а в версиях 1.3 и 2.0 производятся лишь исправления ошибок безопасности. Веб-сервер Apache разрабатывается и поддерживается открытым сообществом разработчиков под эгидой Apache Software Foundation и включён во многие программные продукты, среди которых СУБД Oracle и IBM Web``Sphere. == PHP == '''PHP''' (англ. PHP: Hypertext Preprocessor — «PHP: Препроцессор Гипертекста») — скриптовый язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством представителей хостинга. Входит в LAMP — «стандартный» набор для создания вебсайтов (Linux, Apache, ~MySQL, PHP (Python или Perl)). В области программирования для Сети PHP — один из популярнейших скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP отличается наличием ядра и подключаемых модулей, «расширений»: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т. п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения. Кроме этого, он может использоваться для решения административных задач в операционных системах UNIX, Linux, Windows и Mac OS X. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript[http://polsezann.ru]. Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl. Ныне PHP используется сотнями тысяч разработчиков. Несколько миллионов сайтов сообщают о работе с PHP, что составляет более пятой доли доменов Интернета. Группа разработчиков PHP состоит из множества людей, добровольно работающих над ядром и расширениями PHP, и смежными проектами, такими, как PEAR или документация языка. == MySQL == '''MySQL''' (произносится «Май Эс Кью Эль») — свободная система управления базами данных (СУБД). MySQL является собственностью компании MySQL AB, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. Помимо этого компания MySQL AB разрабатывает функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации[http://japanese-girls.ru]. MySQL характеризуется большой скоростью, устойчивостью и лёгкостью в использовании, является решением для малых и средних приложений. Наряду с Oracle Database это одна из самых быстрых СУБД на сегодняшний день. Входит в LAMP. Распространение СУБД MySQL на основе GPL и высокая скорость обработки запросов привело к тому, что эта база данных стала стандартом де-факто в услугах сетевого хостинга. Обычно ~MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. Гибкость СУБД MySQL обеспечивается поддержкой большого типа таблиц: пользователи могут выбрать как сверхбыстрые таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и более медленные, но чрезвычайно устойчивые таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующем принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL лицензированию в СУБД MySQL постоянно появляются новые типы таблиц. == Установка и настройка == 1. Необходимо установить Apache (httpd), PHP, MySQL (сервер и клиент) и компоненты для сопряжения PHP c MySQL: <source lang="bash"> # yum -y install httpd php mysql mysql-server php-mysql </source> 2. Настраиваем сервисы, чтобы автоматически запускались при загрузке системы: <source lang="bash"> # /sbin/service httpd start # /sbin/service mysqld start </source> 3. '''ВНИМАНИЕ!''' Установите пароль на пользователя root в MySQL, иначе каждый может получить полный доступ к серверу БД. Рекомендуется установить пароль не похожий на пароль пользователя root в системе. <source lang="bash"> # mysqladmin -u root password 'new-password' </source> 4. Некоторые настройки безопасности в MySQL: <source lang="bash"> # mysql -u root -p mysql> DROP DATABASE test; mysql> DELETE FROM mysql.user WHERE user = ''; mysql> FLUSH PRIVILEGES; </source> 5. Домашняя страница для Apache находится в /var/www/html/. Создайте в ней файл phpinfo.php: <source lang="php"> <?php phpinfo(); ?> </source> 6. Откройте в браузере адрес: http://localhost/phpinfo.php, Вы должны увидеть полную информацию о Вашей ситеме. ---- Источники: * http://masters.donntu.edu.ua/2006/fvti/zubritskaya/ind/index.htm * http://fedoranews.org/cms/node/2425 [[Category:Установка и настройка]] [[Category:Настройка системы]] cc00fd244c46b2b7e0ad19f1e5f245f5226bc49b 491 489 2010-05-12T19:02:02Z VasileVsx 2 Anularea modificărilor efectuate de către [[Special:Contributions/188.134.38.14|188.134.38.14]] ([[User talk:188.134.38.14|discuţie]]) şi revenire la ultima versiune de către [[User:OlegA|OlegA]] wikitext text/x-wiki {{Суперпользователь}} == Apache == '''Apache HTTP-сервер''' (по-русски обычно произносят Апа&#769;чи или Апа&#769;ч) — это веб-сервер, с открытым исходным кодом. С апреля 1996 это самый популярный HTTP-сервер в Интернете: в мае 1999 года он работал на 57 % веб-серверов, в августе 2004 на 67 %. Основными достоинствами Apache считаются надёжность и гибкость конфигурации. Он позволяет подключать внешние модули для предоставления данных, использовать СУБД для аутентификации пользователей, модифицировать сообщения об ошибках и т. д. Поддерживает IPv6. Недостатком наиболее часто называется отсутствие удобного стандартного интерфейса для администратора. Сервер был написан в начале 1995 года и считается, что его имя восходит к шуточному названию «a patchy» (англ. заплаточный), так как он устранял ошибки популярного тогда сервера Всемирной паутины NCSA HTTPd 1.3. В дальнейшем, с версии 2.х сервер был переписан заново и теперь не содержит кода NCSA, но имя осталось. На данный момент разработка ведется в ветке 2.2, а в версиях 1.3 и 2.0 производятся лишь исправления ошибок безопасности. Веб-сервер Apache разрабатывается и поддерживается открытым сообществом разработчиков под эгидой Apache Software Foundation и включён во многие программные продукты, среди которых СУБД Oracle и IBM Web``Sphere. == PHP == '''PHP''' (англ. PHP: Hypertext Preprocessor — «PHP: Препроцессор Гипертекста») — скриптовый язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством представителей хостинга. Входит в LAMP — «стандартный» набор для создания вебсайтов (Linux, Apache, ~MySQL, PHP (Python или Perl)). В области программирования для Сети PHP — один из популярнейших скриптовых языков (наряду с JSP, Perl и языками, используемыми в ASP) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP отличается наличием ядра и подключаемых модулей, «расширений»: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т. п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения. Кроме этого, он может использоваться для решения административных задач в операционных системах UNIX, Linux, Windows и Mac OS X. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript. Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl. Ныне PHP используется сотнями тысяч разработчиков. Несколько миллионов сайтов сообщают о работе с PHP, что составляет более пятой доли доменов Интернета. Группа разработчиков PHP состоит из множества людей, добровольно работающих над ядром и расширениями PHP, и смежными проектами, такими, как PEAR или документация языка. == MySQL == '''MySQL''' (произносится «Май Эс Кью Эль») — свободная система управления базами данных (СУБД). MySQL является собственностью компании MySQL AB, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. Помимо этого компания MySQL AB разрабатывает функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации. MySQL характеризуется большой скоростью, устойчивостью и лёгкостью в использовании, является решением для малых и средних приложений. Наряду с Oracle Database это одна из самых быстрых СУБД на сегодняшний день. Входит в LAMP. Распространение СУБД MySQL на основе GPL и высокая скорость обработки запросов привело к тому, что эта база данных стала стандартом де-факто в услугах сетевого хостинга. Обычно ~MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы. Гибкость СУБД MySQL обеспечивается поддержкой большого типа таблиц: пользователи могут выбрать как сверхбыстрые таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и более медленные, но чрезвычайно устойчивые таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующем принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL лицензированию в СУБД MySQL постоянно появляются новые типы таблиц. == Установка и настройка == 1. Необходимо установить Apache (httpd), PHP, MySQL (сервер и клиент) и компоненты для сопряжения PHP c MySQL: <source lang="bash"> # yum -y install httpd php mysql mysql-server php-mysql </source> 2. Настраиваем сервисы, чтобы автоматически запускались при загрузке системы: <source lang="bash"> # /sbin/service httpd start # /sbin/service mysqld start </source> 3. '''ВНИМАНИЕ!''' Установите пароль на пользователя root в MySQL, иначе каждый может получить полный доступ к серверу БД. Рекомендуется установить пароль не похожий на пароль пользователя root в системе. <source lang="bash"> # mysqladmin -u root password 'new-password' </source> 4. Некоторые настройки безопасности в MySQL: <source lang="bash"> # mysql -u root -p mysql> DROP DATABASE test; mysql> DELETE FROM mysql.user WHERE user = ''; mysql> FLUSH PRIVILEGES; </source> 5. Домашняя страница для Apache находится в /var/www/html/. Создайте в ней файл phpinfo.php: <source lang="php"> <?php phpinfo(); ?> </source> 6. Откройте в браузере адрес: http://localhost/phpinfo.php, Вы должны увидеть полную информацию о Вашей ситеме. ---- Источники: * http://masters.donntu.edu.ua/2006/fvti/zubritskaya/ind/index.htm * http://fedoranews.org/cms/node/2425 [[Category:Установка и настройка]] [[Category:Настройка системы]] 4d963a1ca2bb38304765ea731c17c24d73beefc6 Rtorrent 0 103 490 481 2010-05-12T18:33:16Z 192.168.167.2 0 Anularea modificării 481 făcute de [[Special:Contributions/188.134.38.14|188.134.38.14]] ([[User talk:188.134.38.14|Discuţie]]) wikitext text/x-wiki {{Суперпользователь}} [http://libtorrent.rakshasa.no/ Домашняя страница] == Установка == === Подготовка === Ставить rtorrent не просто, но очень просто, как и всё что находится в Fedora Extras: <source lang="bash"> # yum -y install rtorrent </source> Также можно найти более новую версию в [http://dag.wieers.com/ dag]: [http://dag.wieers.com/rpm/packages/rtorrent/ rtorrent] и [http://dag.wieers.com/rpm/packages/libtorrent/ libtorrent]. === Настройка === Создадим файл с настройками: <source lang="bash"> $ cat <<EOF >>~/.rtorrent.rc port_range = 10000-10005 check_hash = yes directory = /mnt/storage/torrent session = /mnt/storage/torrent tos = default upload_rate = 95 download_rate = 0 EOF </source> В этом примере, в домашнем каталоге пользователя (не обязательно ''root'', более того - желательно в каталоге пользователя отличного от ''root'') создам файл со следующими настройками: * проверять хеш торрентов после завершения закачки * прослушивать свободный порт из диапазона ''10000-10005'' * использовать сессии, и сохранять торренты и закачки в ''/mnt/storage/torrent'' * установить поле TOS исходящих IP пакетов по умолчанию для системы (но не по умолчанию для rtorrent). Если не определить эту настройку возможны задержки в комбинациями с некоторыми рутерами. * ограничить отдачу скоростью 95 kb/s * не ограничить закачку В список правил ''iptables'' добавляем строки (мы же хотим быть подключаемыми): <source lang="bash"> # iptables -A INPUT -p tcp -m state --state NEW -m multiport --destination-ports 10000:10005 -i $EXTIF -j ACCEPT # iptables -A INPUT -p udp -m state --state NEW -m multiport --destination-ports 10000:10005 -i $EXTIF -j ACCEPT </source> если наш клиент не имеет внешнего IP, тогда на рутере (а у нас там Linux, верно?) настраиваем DNAT <source lang="bash"> # iptables -t nat -A PREROUTING --dst $INET_IP -p tcp -m multiport --destination-ports 10000:10005 -j DNAT --to-destination $LANSERV_IP # iptables -t nat -A PREROUTING --dst $INET_IP -p udp -m multiport --destination-ports 10000:10005 -j DNAT --to-destination $LANSERV_IP </source> В этих примерах: ''EXTIF'' - имя устройства "глядящего" наружу. например ''eth0'' ''INET_IP'' - внешний IP адрес ''LANSERV_IP'' - IP адрес машины на которой запущен rtorrent клиент == Запуск == Теперь можно запускать rtorrent: <source lang="bash"> $ rtorrent </source> Управляем клиентом стрелками и: backspace - для добавления torrent'a (работает автозаполнение по Tab) return - то же самое, но торрент остаётся неактивным Ctrl-O Указать иной каталог для торрента. Ctrl-s Запустить закачку (опционально проверив хеш) Ctrl-d Остановить активную закачку, или удалить неактивный торрент. Ctrl-r Перепроверить хеш. Больше можно узнать в странице ''man rtorrent'' или [http://libtorrent.rakshasa.no/wiki/RTorrentUserGuide Руководстве пользователя]. '''''Внимание:''' скорее всего вы не сможете воспользоваться комбинациями клавиш Ctrl-s, Ctrl-q, так как они используются для управлением терминалом.'' Впрочем есть решение - перед запуском rtorrent (или screen) выполнить команды: <source lang="bash"> $ stty stop undef $ stty start undef </source> == Удаленное управление == Усложняем задачу: имеем удаленный сервачок (конечно на нем запущен Fedora Core 6), без видеокарты, но с сетевухой и хорошим каналом в интернет - грех подобным не воспользоваться ;) Для организации отключаемых сессий можно воспользоваться dtach или screen (обе можно найти в репо Fedora Core). Мы воспользуемся последним. <source lang="bash"> $ yum install screen </source> Хотя предположительно наш сервер не перезагружается, неплохо бы обеспечить запуск rtorrent при запуске системы: <source lang="bash"> # cat <<EOF >/etc/init.d/rtorrent #!/bin/bash # # Starting rtorrent in a screen session as daemon # Author: Vasile Vsx # # chkconfig: 2345 50 01 # # description: start rtorrent detached # processname: rtorrent # source function library . /etc/rc.d/init.d/functions # Source networking configuration. [ -r /etc/sysconfig/network ] && . /etc/sysconfig/network # Check that networking is up. [ "\${NETWORKING}" = "no" ] && exit 0 if [ -f /etc/sysconfig/rtorrent ]; then . /etc/sysconfig/rtorrent fi if [ -z \$RTORRENT_USER ]; then exit 0 fi RETVAL=0 start() { echo -n "Starting rtorrent: " daemon --user \$RTORRENT_USER /usr/bin/screen -dmS rtorrent /usr/bin/rtorrent \$OPTIONS RETVAL=\$? echo } stop() { echo -n "Stopping rtorrent: " killproc rtorrent -INT RETVAL=\$? echo } restart() { stop start } case "\$1" in start) start ;; stop) stop ;; restart) restart ;; status) status rtorrent ;; *) echo $"Usage: \$0 {start|stop|status|restart}" exit 1 esac exit $RETVAL EOF # chmod +x /etc/init.d/rtorrent # chkconfig --add rtorrent </source> Определяем пользователя используемого для запуска rtorrent <source lang="bash"> # cat <<EOF >/etc/sysconfig/rtorrent RTORRENT_USER=username EOF </source> запускаем и останавливает rtorrent командами: <source lang="bash"> # /sbin/service rtorrent start </source> и <source lang="bash"> # /sbin/service rtorrent stop </source> Подключаемся к запущенной сессии: <source lang="bash"> $ screen -r </source> отключаемся сочетанием клавиш: <code>Ctrl-a d</code> Также создаем простой скрипт (rt): <source lang="bash"> $ mkdir ~/bin && cat <<EOF >~/bin/rt #!/bin/sh stty stop undef stty start undef screen -rS rtorrent EOF chmod +x ~/bin/rt </source> [[Category:Программное обеспечение]] 9f4b19e399236dd9f83e714440bbe90e7c904869 Gentoo: использование молдавского зеркала 0 95 499 296 2010-08-18T20:16:06Z 95.65.63.123 0 /* Репозиторий */ wikitext text/x-wiki == Репозиторий == Для того, чтобы обновления ''Gentoo'' качались с одного из местных (Молдавских) серверов, достаточно лишь изменить следующую строку в файле '''/etc/make.conf''': <source lang="cfc"> GENTOO_MIRRORS="ftp://ftp.bsd.md/pub/Gentoo/gentoo http://distfiles.gentoo.md/ ftp://ftp.lug.ro/gentoo http://mirror.gentoo.org" </source> Больший приоритет имеют зеркала, находящиеся в начале строки. В данном примере, сначала будет попытка скачать файл с одного из MD-IX зеркал, в случае неудачи, пройдёт попытка подключения к [ftp://ftp.lug.ro/gentoo lug.ro], а затем - к [http://distfiles.gentoo.org gentoo.org]. == Дерево Portage == Так-же есть возможность синхронизировать и дерево ''portage'' с локального (Молдавского) зеркала, предоставляемого командой [http://www.bsd.md BSD.md]. Для этого, нужно добавить следующую строку в тот-же '''/etc/make.conf''': <source lang="cfc"> SYNC="rsync://rsync.bsd.md/gentoo-portage" </source> Другие зеркала portage: <source lang="cfc"> SYNC="rsync://gentoo.md/gentoo-portage" </source> = Разное = Чтобы ещё ускорить процесс скачивания и установки обновлений, можно настроить portage, чтобы пока происходит сборка одного пакета, уже качался следующий. Это достигается добавлением опции parallel-fetch в строку FEATURES файла '''/etc/make.conf''': <source lang="cfc"> FEATURES="parallel-fetch" </source> [[Category:Установка и настройка]] [[Category:Другие дистрибутивы]] 7c69bfbb5055520ebf6033a78a3f3d025bd77eb5 576 499 2012-06-11T09:10:12Z VasileVsx 2 Exclude bsd.md wikitext text/x-wiki == Репозиторий == Для того, чтобы обновления ''Gentoo'' качались с одного из местных (Молдавских) серверов, достаточно лишь изменить следующую строку в файле '''/etc/make.conf''': <source lang="cfc"> GENTOO_MIRRORS="http://mirror.gentoo.md ftp://ftp.lug.ro/gentoo http://mirror.gentoo.org" </source> Больший приоритет имеют зеркала, находящиеся в начале строки. В данном примере, сначала будет попытка скачать файл с одного из MD-IX зеркал, в случае неудачи, пройдёт попытка подключения к [ftp://ftp.lug.ro/gentoo lug.ro], а затем - к [http://distfiles.gentoo.org gentoo.org]. == Дерево Portage == Так-же есть возможность синхронизировать и дерево ''portage'' с локального (Молдавского) зеркала, предоставляемого командой [http://www.bsd.md BSD.md]. Для этого, нужно добавить следующую строку в тот-же '''/etc/make.conf''': <source lang="cfc"> SYNC="rsync://gentoo.md/gentoo-portage" </source> = Разное = Чтобы ещё ускорить процесс скачивания и установки обновлений, можно настроить portage, чтобы пока происходит сборка одного пакета, уже качался следующий. Это достигается добавлением опции parallel-fetch в строку FEATURES файла '''/etc/make.conf''': <source lang="cfc"> FEATURES="parallel-fetch" </source> [[Category:Установка и настройка]] [[Category:Другие дистрибутивы]] 045f35331439f580b13c61746acee74c4faf1dae FAQ 0 110 504 449 2011-05-31T06:42:57Z 81.18.136.2 0 /* rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? */ wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. ==== Как изменить время действия пароля запрашиваемого командой sudo ==== Правим /etc/sudoers. Желательно стандартной утилитой - visudo. Добавляем параметр timestamp: <source lang="bash"> Defaults timestamp_timeout=30 </source> В примере, 30 - значение интервала в минутах. Можно задать это значение только для определенного пользователя: <source lang="bash"> User_Alias MYSELF = username Defaults:MYSELF timestamp_timeout=60 </source> === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rm -f /var/lib/rpm/__db.??? </source> а затем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Финализировать сессии на оптическом носителе === Если нужно финализировать диск с мультисесией, то необходимо выполнить команду: <source lang="bash"> # growisofs -M /dev/dvd=/dev/zero </source> где /dev/dvd - пишущий привод. Вместо /dev/dvd может быть /dev/cdrom. == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо приобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. === Восcтанавливаем chmod === Стандартный chmod для директорий 755, а для файлов 644. Восстановление происходит в 2 этапа, сначала для директорий, а затем для файлов. <source lang="bash"> # find /dir -type d -print -exec chmod 755 {} \; # find /dir -type f -print -exec chmod 644 {} \; </source> [[ro:FAQ/ro]] 77309c8b0de2e3902f301b8a0d94d407cce2bee8 577 504 2013-03-10T17:35:08Z OlegA 1 /* Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? */ wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="xorg_conf"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="cfc"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. ==== Как изменить время действия пароля запрашиваемого командой sudo ==== Правим /etc/sudoers. Желательно стандартной утилитой - visudo. Добавляем параметр timestamp: <source lang="bash"> Defaults timestamp_timeout=30 </source> В примере, 30 - значение интервала в минутах. Можно задать это значение только для определенного пользователя: <source lang="bash"> User_Alias MYSELF = username Defaults:MYSELF timestamp_timeout=60 </source> === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rm -f /var/lib/rpm/__db.??? </source> а затем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Финализировать сессии на оптическом носителе === Если нужно финализировать диск с мультисесией, то необходимо выполнить команду: <source lang="bash"> # growisofs -M /dev/dvd=/dev/zero </source> где /dev/dvd - пишущий привод. Вместо /dev/dvd может быть /dev/cdrom. == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо приобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. === Восcтанавливаем chmod === Стандартный chmod для директорий 755, а для файлов 644. Восстановление происходит в 2 этапа, сначала для директорий, а затем для файлов. <source lang="bash"> # find /dir -type d -print -exec chmod 755 {} \; # find /dir -type f -print -exec chmod 644 {} \; </source> [[ro:FAQ/ro]] cd41437eb54f737279f29fd78a27bcd1e90e5418 578 577 2013-03-10T17:35:37Z OlegA 1 /* Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? */ wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="xorg_conf"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="xorg_conf"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. ==== Как изменить время действия пароля запрашиваемого командой sudo ==== Правим /etc/sudoers. Желательно стандартной утилитой - visudo. Добавляем параметр timestamp: <source lang="bash"> Defaults timestamp_timeout=30 </source> В примере, 30 - значение интервала в минутах. Можно задать это значение только для определенного пользователя: <source lang="bash"> User_Alias MYSELF = username Defaults:MYSELF timestamp_timeout=60 </source> === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rm -f /var/lib/rpm/__db.??? </source> а затем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Финализировать сессии на оптическом носителе === Если нужно финализировать диск с мультисесией, то необходимо выполнить команду: <source lang="bash"> # growisofs -M /dev/dvd=/dev/zero </source> где /dev/dvd - пишущий привод. Вместо /dev/dvd может быть /dev/cdrom. == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо приобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="cfc"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. === Восcтанавливаем chmod === Стандартный chmod для директорий 755, а для файлов 644. Восстановление происходит в 2 этапа, сначала для директорий, а затем для файлов. <source lang="bash"> # find /dir -type d -print -exec chmod 755 {} \; # find /dir -type f -print -exec chmod 644 {} \; </source> [[ro:FAQ/ro]] 36b283e61aefbc16dc95293f462710b338605d22 579 578 2013-03-10T17:37:19Z OlegA 1 /* При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. */ wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="xorg_conf"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="xorg_conf"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. ==== Как изменить время действия пароля запрашиваемого командой sudo ==== Правим /etc/sudoers. Желательно стандартной утилитой - visudo. Добавляем параметр timestamp: <source lang="bash"> Defaults timestamp_timeout=30 </source> В примере, 30 - значение интервала в минутах. Можно задать это значение только для определенного пользователя: <source lang="bash"> User_Alias MYSELF = username Defaults:MYSELF timestamp_timeout=60 </source> === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rm -f /var/lib/rpm/__db.??? </source> а затем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="cfc"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Финализировать сессии на оптическом носителе === Если нужно финализировать диск с мультисесией, то необходимо выполнить команду: <source lang="bash"> # growisofs -M /dev/dvd=/dev/zero </source> где /dev/dvd - пишущий привод. Вместо /dev/dvd может быть /dev/cdrom. == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо приобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="xorg_conf"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. === Восcтанавливаем chmod === Стандартный chmod для директорий 755, а для файлов 644. Восстановление происходит в 2 этапа, сначала для директорий, а затем для файлов. <source lang="bash"> # find /dir -type d -print -exec chmod 755 {} \; # find /dir -type f -print -exec chmod 644 {} \; </source> [[ro:FAQ/ro]] 8c36b1787f650e2a9b56de906fd1ed1c8836c04c 580 579 2013-03-10T17:39:10Z OlegA 1 /* Что делать если не запускаются графические приложения от пользователя root? */ wikitext text/x-wiki == Первые шаги == === Как узнать локальное время и дату? === Выполните следующую команду в консоли <source lang="bash"> $ date </source> === Как узнать какой версии ядро и операционая система (ОС)? === Чтобы узнать версию ядра, и когда оно собиралось, выполните следующую команду в консоли: <source lang="bash"> $ uname -a </source> Подробнее <code>man uname</code> Есть несколько способов определить версию операционной системы: <source lang="bash"> $ cat /etc/redhat-release Fedora release 8.93 (Rawhide) $ head -1 /etc/issue Fedora release 8.93 (Rawhide) $ rpm -q fedora-release fedora-release-8.93-1.noarch </source> Если установлен пакет ''redhat-lsb'' доступен следующий метод: <source lang="bash"> $ lsb_release -d Description: Fedora release 8.93 (Rawhide) </source> === Как узнать сколько времени работает ОС? === Выполните следующую команду в консоли: <source lang="bash"> $ uptime </source> === Как заставить Nautilus открывать каталоги в том же окне? === Следует включить опцию ''Система->Настройки->Настройки управления файлами->Поведение->Всегда открывать каталоги в обозревателе'' === Как задать комбинацию Ctrl+Shift для переключения раскладки клавиатуры (En-RU)? === Если у Вас KDE, то в первую очередь отключите встроенные средства. Затем отредактируйте файл <code>/etc/X11/xorg.conf</code> <source lang="xorg_conf"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection </source> перезапустите X. Другой вариант настроек: языки румынский (раскладка отличается от us тем что национальные символы набираются с помощью правого ALT и соответствующего аналога буквы в us-раскладке: например Alt''Gr-t для 'ţ', Alt''Gr-s для 'ş', Alt''Gr-q для 'â'), русский, переключение правой Win''Key. <source lang="xorg_conf"> Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "ro,ru" Option "XkbOptions" "grp:rwin_toggle" EndSection </source> === Как запустить приложение или команду в консоли от пользователя root (Суперпользователь) === В консоли выполните <source lang="bash"> $ su - </source> и введите пароль root. Есть ещё вариант <source lang="bash"> $ su - -c 'command' </source> где ''command'' - команда или приложение. Наконец можно настроить sudo. <code>man sudo</code> рекомендуется к прочтению. В результате можно будет выполнять все или определеные команды с правами root, указывая или не указывая пароль, приписав в начале ''sudo'', например <source lang="bash"> $ sudo /sbin/fdisk -l </source> Пример настройки sudo для пользователя ''anyuser': '' <source lang="bash"> # usermod -a -G wheel anyuser # echo '%wheel ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers </source> новые правила вступят в силу со следующего входа пользователя в систему. ==== Как изменить время действия пароля запрашиваемого командой sudo ==== Правим /etc/sudoers. Желательно стандартной утилитой - visudo. Добавляем параметр timestamp: <source lang="bash"> Defaults timestamp_timeout=30 </source> В примере, 30 - значение интервала в минутах. Можно задать это значение только для определенного пользователя: <source lang="bash"> User_Alias MYSELF = username Defaults:MYSELF timestamp_timeout=60 </source> === Как включить 3D рабочий стол? === Fedora Core 5 и выше поддерживает 3D эффекты для оконного менеджера посредством ''AIGLX''. Для начала убеждаемся что имеющиеся драйвер/видеокарта [http://fedoraproject.org/wiki/RenderingProject/aiglx#head-8791a463c0409bab4bd0cc0ded47bfbd206f88c2 поддерживают AIGLX]. Для запуска ''compiz'' как диспетчера окон достаточно включить опцию ''System->Preferinţe->Desktop Effects->Enable Desktop Effects'' (''Система->Настройки->Эффекты рабочего стола->Включить''). Также можно установить полный пакет ''compiz-fusion'', поддерживающий больший набор эффектов. Достаточно установить мета-пакет соответствующий используемому рабочему окружению: <source lang="bash"> # yum install compiz-gnome </source> или <source lang="bash"> # yum install compiz-kde </source> Запускается ''compiz-fusion'' из меню Приложений. === Где взять те программы, которых нет в дистрибутиве? === Начиная с дистрибутива Fedora Core 3 открылся специальный проект [http://fedoraproject.org/wiki/Extras Fedora Extras], который содержит дополнительные пакеты к Fedora Core. Это обширный репозитарий, с большим количеством пакетов. Также, в Интернет существует множество репозитариев дополнительных пакетов к дистрибутивам Red Hat и Fedora Core. Вот наиболее популярные из них: * [http://rpm.livna.org/ Livna] * [http://freshrpms.net/ Fresh RPMs] * [http://atrpms.net/ ATrpms] * [http://dries.ulyssis.org/rpm/ Dries] Более полный список вы найдете на странице проекта [http://rpmfusion.org FedoraThirdPartyRepos RPMFusion]. В этих репозитариях вы найдёте множество дополнительных пакетов, которые не вошли в состав дистрибутива Fedora Core, но которые собраны специально для него. Также вы можете воспользоваться поисковыми системами по названиям пакетов, такими как: * [http://rpmfind.net/ rpmfind.net] * [http://rpmpbone.net/ rpmpbone.net] * [http://rpmseek.com/ rpmseek.com] === Можно ли в Fedora Core сменить русскую кодировку по умолчанию UTF-8 на кодировку KOI8-R? === Да можно. В дистрибутиве по умолчанию, при выборе русского языка, включается кодировка ru_RU.UTF-8. Однако, файлы с описанием локали ru_RU.koi8r по прежнему присутствуют в системе, хотя и явно не используются. Замечу, что пользоваться старой кодирвкой KOI8-R идеологически неправильно, потому что другие дистрибутивы наоборот идут в сторону юникодной кодировки ru_RU.UTF-8. Я думаю, что тотальный переход на UTF-8 - это вопрос пары-тройки лет. На мой взгляд, использование KOI8-R оправдано только в случае, если ваши исторические системы работают на этой кодировке или если необходима работа программ, которые не умеют работать с юникодной кодировкой. Подумайте, возможно вам нужно, чтобы с KOI8-R работала, скажем, одна (или несколько) программ, а остальная система функционировала бы используя юникодную кодировку. Если у вас именно эта ситуация, то нет ничего проще - перед запуском программы (в xterm или в обычном терминале, выполните команду shell: <source lang="bash"> $ export LANG=ru_RU.koi8r </source> Эта команда установит локаль KOI8-R для программ, которые будут запускаться далее из этого же shell. Вся остальная система будет по-прежнему функционировать в UTF-8. === Как задать профиль init 5 по умолчанию при загрузке после установки Fedora в text-mode? === Необходимо выполнить следующую команду после первого запуска: <source lang="bash"> # sed -i 's/id:3:initdefault/id:5:initdefault/g' /etc/inittab </source> === Как задать http-прокси для пользователя? === Необходимо добавить в профиль <code>~/.bash_profile</code> следующие строки: <source lang="bash"> http_proxy=http://proxy:3128 export http_proxy </source> или <source lang="bash"> ftp_proxy=http://proxy:3128 export ftp_proxy </source> Новые параметры вступят в силу при следующем входе. === Как запустить программу с игнорированием определеных констант (env)? === Для гнорирования env, к примеру http_proxy, то достаточно выполнть следующее: <source lang="bash"> $ env --unset=http_proxy [CMD] </source> где <code>[CMD]</code> - команда. === Как установить Gecko для wine === 1. Закачиваем последнюю версию wine_gecko.cab c [http://sourceforge.net/project/showfiles.php?group_id=6241&package_id=195269 sourceforge.net]. В папку <code>~/.wine/drive_c/windows/gecko/0.1.0</code> 2. Распаковываем все при помощи cabextract <source lang="bash"> $ cabextract wine_gecko-0.1.0.cab </source> 3. Перезапускаем wine: <source lang="bash"> $ wineboot -r </source> === Как переименовать LVM Group === Для переименования LVM нам понадобится загрузится или с LiveCD или в режиме rescue. Если режим rescue, то необходимо отказаться от монтирования текушей системы. В консоли выполняем следующие команды: 1. Запуск lvm консоли: <source lang="bash"> # lvm </source> 2. Проверяем, какие есть группы и проверяем, что нам действительно нужно переименовать: <source lang="bash"> lvm> vgdisplay </source> 3. Отключаем активные логические партиции: <source lang="bash"> lvm> vgchange -a n </source> 4. Переименовываем: <source lang="bash"> lvm> vgrename <oldname> <newname> </source> 5. Активируем логические партиции: <source lang="bash"> lvm> vgchange -a y </source> 6. Выходим: <source lang="bash"> lvm> exit </source> '''''Внимание:''' после переименования, необходимо скорректировать /etc/fstab и создать заново initrd в разделе /boot с указанием параметра --fstab='' == Решение проблем == === rpm зависает на всех операциях от пользователя root. От обычного пользователя работает нормально. Как решить? === Причина некорректная предыдущая транзакция. В консоли выполните <source lang="bash"> # rm -f /var/lib/rpm/__db.??? </source> а затем команду: <source lang="bash"> # rpm --rebuilddb </source> === При работе в GAIM/Pidgin вместо русских букв принимаются кракозябры. Как сделать чтобы не было проблем? === Такая проблема возникает в основном, если человек, с которым вы общаетесь работает в ICQ клиенте Miranda для Windows или других ICQ клиентах, которые не полностью совместимы с родным клиентом ICQ от Mirabilis, потому что как правило с icq200* проблем не бывает. В Fedora Core проблема может быть решена так: # Запускаем GAIM/Pidgin (Основное меню GNOME -> Интернет -> IM) # Нажимаем кнопку "Учётные записи" # В появившемся окне нажимаем либо "Добавить" (или "Изменить" если ваша учётная запись уже создана) # Заполняем поля в окне согласно подсказкам # Внизу окна нужно щёлкнуть по строчке "Показать больше параметров" # В поле кодировка нужно стереть значение ISO-8859-1 и поставить cp1251 # Нажмите "Сохранить" и в окне учётных записей "Закрыть" Последнее, что необходимо - это подключиться, если вы ещё не были подключены к серверу или переподключиться, если уже были подключены. Теперь всё должно работать. === Для компьютера в сети мне дали IP адрес и какую-то странную сетевую маску - одну цифру, как мне посчитать нормальные значения netmask, network и broadcast? === Очень просто. Допустим вам дали такую сетевую маску (''netmask'') как 28. Это укороченная форма записи ''netmask'', которую иногда называют ''префиксом''. Она представляет собой количество бит в IPv4 адресе, которые в ''netmask'' установлены в 1. Например, 32 соответствует 255.255.255.255, 24 соответствует 255.255.255.0 и т.д. Теперь становится понятным как посчитать значение для 28, но не спешите браться за калькулятор или карандаш и листок бумаги. Производитель дистрибутива уже позаботился, чтобы вам было удобно. Для подобных расчётов в системе есть специальная утилита ''ipcalc'', входящая в состав пакета ''initscripts''. Пусть вам в дополнение к сетевой маске дали IP адрес 10.100.225.147. Выполняем команду: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m </source> и получаем строку вида <source lang="bash"> NETMASK=255.255.255.240 </source> Это и есть сетевая маска в стандартном виде. Можно получить адрес сети (network), используя опцию "-n" и широковещательны адрес (broadcast), используя опцию "-b". Или получить полный набор, скомпоновав все опции: <source lang="bash"> $ ipcalc 10.10.225.147/28 -m -n -b </source> получаем <source lang="bash"> NETMASK=255.255.255.240 BROADCAST=10.100.225.159 NETWORK=10.100.225.144 </source> Если сетевая маска дана вам в стандартном виде, то вы можете получить network и broadcast немного видоизменив команду: <source lang="bash"> $ ipcalc 10.10.225.147 255.255.255.240 -n -b </source> А если вам нужно по стандартной netmask получить префикс (укороченную форму), то воспользуйтесь командой: <source lang="bash"> $ ipcalc 10.100.225.147 255.255.255.240 -p </source> получаем <source lang="bash"> PREFIX=28 </source> === Как переименовать имя компьютера, когда система уже установлена? === Необходимо открыть и отредактировать файл /etc/sysconfig/network <source lang="bash"> HOSTNAME= </source> === Как монтировать ресурс протокола Samba? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount.cifs //server/ARHIV /mnt/smb -o username=user </source> Директория /mnt/smb должна быть создана перед запуском команды. размонтировать аналогично, как и <code>mount</code> - <code>umount.cifs</code> Также можно воспользоваться утилитой fusesmb: <source lang="bash"> # yum install fuse-smb $ mkdir ~/smb $ fusesmb ~/smb $ sleep 10s; ls ~/smb/ </source> Так как fusesmb использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> === Как примонтировать раздел с файловой системой FAT32? === Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t vfat /dev/hdaX /mnt/disk_fat -o quiet </source> Директория ''/mnt/disk_fat'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_fat vfat defaults,codepage=866,iocharset=koi8r,utf8,showexec,noexec,shortname=lower,uid=user,gid=localuser,umask=002,quiet,users 0 0 </source> === Как примонтировать раздел с файловой системой NTFS? === Для доступа на чтение/запись нам потребуется пакет ntfs-3g. Ставим его стандартно: <source lang="bash"> # yum install ntfs-3g </source> Под пользователем root или командой <code>sudo</code> выполнить следующее: <source lang="bash"> # mount -t ntfs /dev/hdaX /mnt/disk_ntfs -o force </source> Директория ''/mnt/disk_ntfs'' должна быть создана перед запуском команды. Также можно (и рекомендуется) прописать файловую систему в ''/etc/fstab''. Например вот так: <source lang="bash"> /dev/hda1 /mnt/disk_ntfs ntfs defaults,force,noexec,uid=user,gid=localuser,umask=002,users 0 0 </source> Если при загрузке файловая система не монтируется автоматически, выполните команду: <source lang="bash"> # system-config-securitylevel-tui --selinux=permissive </source> Так как ntfs-3g использует библиотеку fuse, полезно добавить в список дополнительных групп пользователя группу fuse: <source lang="bash"> # /usr/sbin/usermod -a -G fuse <username> </source> Существует более простой способ. Достаточно установить и запустить утилиту ntfs-config (доступная в Fedora Extras): <source lang="bash"> # yum install ntfs-config # ntfs-config </source> === Как отключить поддержку IPv6? === Все операции надо выполнять от пользователя root. 1. Редактируем файл /etc/sysconfig/network <source lang="bash"> NETWORKING_IPV6=no </source> 2. Отключаем файрвол: <source lang="bash"> # chkconfig --level 35 ip6tables off </source> 3. Перегружаемся. === При запуске yum (pup, pirut, yumex) дает ошибку "Existing lock /var/run/yum.pid: another copy is running. Aborting."? === Одновременно может работать только одна копия yum или программы его использующей. Поэтому следует завершить (дождаться завершения) существующую копию процесса yum. Если вы не запускали yum-основанных программ, тогда причина в работающем демоне yum-updatesd. Для завершения работы демона: <source lang="bash"> # service yum-updatesd stop </source> Для отключения (в этом случае вы не будете получать уведомления о наличии обновлений): <source lang="bash"> # chkconfig yum-updatesd off </source> === Как восстановить KMenu по -умолчанию? === Необходимо удалить файл: ~/.config/menus/applications-kmenuedit.menu === Не могу установить драйвер NVIDIA/ATI (другой модуль ядра). yum жалуется на конфликт версий ядер. Как решить? === Это [http://fedoraproject.org/wiki/Bugs/FC6Common известная проблема] в установщике Fedora Core 6. Необходимо с терминале [#h79-8 с правами администратора] выполнить команды: <source lang="bash"> # wget "http://fedoraproject.org/wiki/Bugs/FC6Common?action=AttachFile&do=get&target=kernel-fix.sh" -O kernel-fix.sh # bash ./kernel-fix.sh </source> Эта команда загрузит правильную версию ядра из основного репозитория Fedora Core 6 и установит его. === Я забыл пароль пользователя root. Как быть? === Необходимо зайти через init 1. Для этого перегружаем систему и в месте, где GRUB спрашивает что загружать нажимаем 'e'. появляется строка загрузки и пишем в конце '''1'''. Загружаемся в консоль уровня 1. используем стандартную команду: <code>passwd</code>. Перегружаемся. === Что делать если не запускаются графические приложения от пользователя root? === Если при запуске от пользователя <code>root</code> вы видите в терминале подобное <source lang="text"> Xlib: connection to ":0.0" refused by server Xlib: No protocol specified appname: cannot connect to X server :0 </source> то следует добавить пользователя root (или возможно иного пользователя) в список разрешенных: <source lang="bash"> $ xhost si:localuser:root </source> === Почему в E17 (Enlightenment DR17) всё в "закорючках"? Руссификация e17 === Подключив репозиторий [http://sps.nus.edu.sg/~didierbe/index.html Didier E17] вы получаете возможность простой установки замечательного оконного мэнэджера Enlightenment DR17: <source lang="bash"> # yum install enlightenment </source> Запустив систему в первый раз кто-то может быть неприятно удивлен - весь текст нечитабелен из за неправильного выбраного шрифта. Пусть вас это не пугает. Во первых - коммандой <source lang="bash"> $ enlightenment_remote -lang-set en_US </source> мы меням язык интерфейса e17 на английский. Далее, шелчком мыши по свободной области экрана открываем меню, в нем ''Configuration'', ''Configuration panel'', ''Appearance'', ''Fonts''. В диалоге включаем опцию ''"Enable custom font classes"'' и выбираем шрифт - что-то вроде '''"Bitstream Vera Sans"'''. === Смена кодировки по-умолчанию в сервере MySQL === По умолчанию в сервере MySQL используется кодировка <code>latin1_swedish_ci</code>, что не совсем правильно. Решить эту пробелу можно добавив в отдел <code>[mysqld]</code> следующие строки: <source lang="bash"> init-connect='SET NAMES utf8' character-set-server=utf8 collation-server=utf8_general_ci </source> === Финализировать сессии на оптическом носителе === Если нужно финализировать диск с мультисесией, то необходимо выполнить команду: <source lang="bash"> # growisofs -M /dev/dvd=/dev/zero </source> где /dev/dvd - пишущий привод. Вместо /dev/dvd может быть /dev/cdrom. == Сторонний софт == === Есть ли возможность запуска 1С:Бухгалтерии? === Для полноценной многопользователькой работы необходимо приобрести [http://www.etersoft.ru/content/view/75/77/ WINE@Etersoft]. Также можно попытаться запустить программу на бесплатной версии wine входящей в дистрибутив. Версия 8.0 и 8.1 без проблем работает на Linux через стандартный Wine. Начиная с версии 8.1 компания выпустила кластерную часть под Linux с поддержкой PostgreSQL. Проводились эксперименты в этом направлении. Кластерная часть работает на ура, причём для неё не нужен ключ HASP, а вот интеграция c PostgreSQL проблематична. == Полезное == === Как переименовать файлы из одного списка в имена из другого? === Эта потребность может потребоваться для создания коректных имен субтитров к сериалу. Предположим что имеем 20 видеофайлов в каталоге avi, и 20 файлов с субтитрами в каталоге sub. Тогда: <source lang="bash"> $ cd avi/ && ls >../avilist $ cd ../sub && ls >../sublist $ for i in $(seq 1 20 );do mv "$(head -$i ../sublist|tail -1)" "$(head -$i ../avilist|tail -1)";done </source> === При проигрывании видео с выводом на Xv (Xvideo) есть звук, но нет изображения. === Попробуйте установить утилиту xvattr <source lang="bash"> # yum install xvattr </source> и выполните команду: <source lang="bash"> $ xvattr -a XV_SWITCHCRT -v </source> Если изображение появилось (X сервер перезагружать не следует), то возможно потребуется отказаться от <code>MergedFB</code>. В ''Section "Device"'' файла ''/etc/X11/xorg.conf'' добавьте строку: <source lang="xorg_conf"> Option "MergedFB" "off" </source> === MPlayer (qemu) ругается на RTC, сбита синхронизация. === Зададим новую (большую) пользовательскую частоту таймера: <source lang="bash"> # echo 'dev.rtc.max-user-freq = 1024' >>/etc/sysctl.conf sysctl -p /etc/sysctl.conf </source> === При некорректной работе некоторых программ, когда они начинают потреблять очень много памяти, система может становится неуправляемой. Что делать? === Подсистема управления памятью в Fedora Core 6, по умолчанию настроена не совсем удачно. Эта настройка позволяет запуск некоторых неправильно запрашивающих память программ, но иногда система может становится неуправляемой. Однако политику выделения памяти можно поменять. Для этого прописываем в /etc/sysctl.conf параметры: <source lang="bash"> # echo -e 'vm.overcommit_memory = 2\nvm.overcommit_ratio = 100' >>/etc/sysctl.conf # sysctl -p /etc/sysctl.conf </source> После этого некоторые программы могут аварийно завершаться, жалуясь на недостаток памяти. В таком случае увеличиваем значение параметра ''vm.overcommit_ratio''. И соответственно если не удалось избавится от изначальной проблемы - уменьшаем значение этого параметра. <source lang="bash"> # sysctl -w vm.overcommit_ratio=110 </source> Конечную настройку прописываем в ''/etc/sysctl.conf''. === Mplayer отказывается проигрывать поток (радио) используя декодер AAC, если сервер потока основан на IceCast, хотя при использовании сервера ShoutCast всё проигрывается. === Да, действительно данная проблема есть. Причина данной проблемы в том, что Mplayer не понимает тип потока от Ice``Cast. Для нормальной работы необходимо принудительно заставить Mplayer использовать декодер FAAD. Для этого необходимо добавить опцию при запуске Mplayer: <code>-demuxer +aac</code>. Например: <source lang="bash"> $ mplayer -demuxer +aac http://games.mcc.md:9000/trance </source> Иногда происходит прерывание связи между сервером радио-вещания и клиентом и тогда mplayer заканчивает свою работу. Если нужно, чтобы mplayer всегда пытался восстановить связь просле разрыва, то необходимо добавить параметр <code>-loop 0</code>. === Как быстро и просто создать образ CD или DVD? === Для этого существует приложение dd. Синтаксис очень простой, есть два параметра <code>if=</code> (входной файл) и <code>of=</code> (выходной файл). Пример создания образа CD: <source lang="bash"> $ dd if=/dev/cdrom of=~/cd.iso </source> Пример создания образа DVD: <source lang="bash"> $ dd if=/dev/dvd of=~/dvd.iso conv=noerror,sync </source> '''''Примечание:''''' параметр ''conv=noerror,sync'' нужен для копирования носителей с ошибками чтения. dd проскочит не читаемые сектора записав в образ блоки с нулевым содержимым. === Как создать эмуляцию привода CD/DVD? === Для создания эмуляции необходим файл ISO. <source lang="bash"> # mount -t iso9660 -o loop dvd_cd.iso /media/iso </source> где <code>dvd_cd.iso</code> - файл ISO, <code>/media/iso</code> - точка монтирования. Перед указанием точки, необходимо создать директорию, если её нет. === Как поместить значок Audacious в трей? === В новых версиях Audacious есть встроенный общий плагин Status Icon. Для отображения иконки, необходимо просто его активировать. === Как скопировать AudioCD/VideoCD? === Комманда dd не произведет копирование всего диска, если на диске есть дорожки. Для полного копирования необходимо восаользоватся пакетом cdrdao. 1. Копируем с диска на жеский диск <source lang="bash"> $ cdrdao read-cd --device /dev/sr0 --read-raw file.toc </source> будет создано 2 файла: data.bin и file.toc 2. Записываем диск <source lang="bash"> $ cdrdao write --device /dev/sr0 --speed 40 file.toc </source> необходимо указать параметр --speed для скорости записи. === Многопользовательский режим в screen === Иногда необходимо, чтобы к одной и той же сессии могли подключатся несколько пользователей. screen по умолчанию работает в одно пользовательском режиме, т.е. если сессия активирована под одним пользователем, то только он сможет с ней работать. Рассмотрим активирование многопользовательского режима. В домашнем каталоге пользователя от которого мы хотим запускать сессию создаём файл <code>.screenrc</code> и заполняем: <source lang="bash"> multiuser on addacl <user> </source> где <code><user></code> - пользователь, который имеет должен иметь доступ к screen сессии. Можно задавать несколько пользователей через запятую. Разрешаем запуск другим пользователям: <source lang="bash"> # chmod +s /usr/bin/screen </source> После запуска screen сессии: <source lang="bash"> $ screen -dmS session01 </source> пользователь(и) которых мы перечислили в <code>.screenrc</code> могут восстановить сессию командой: <source lang="bash"> $ screen -x <screen_user>/session01 </source> где <code><screen_user></code> - имя пользователя от которого запущена screen сессия. === Восcтанавливаем chmod === Стандартный chmod для директорий 755, а для файлов 644. Восстановление происходит в 2 этапа, сначала для директорий, а затем для файлов. <source lang="bash"> # find /dir -type d -print -exec chmod 755 {} \; # find /dir -type f -print -exec chmod 644 {} \; </source> [[ro:FAQ/ro]] 74613c38d1683f27035335d677b06e464ad955ef Создаем собственное правило SELinux на базе аудит сообщения 0 92 505 349 2011-06-09T06:30:47Z 87.248.191.50 0 wikitext text/x-wiki {{Суперпользователь}} Многие часто выключают SELinux, полагая что от него только проблемы. На самом деле это очень полезный инструмент аудита и защиты системы. Просто надо его правльно "готовить". :) Рассмотрим простой пример - некий скрипт тянется на, скажем, 8000 порт. По умолчанию такой доступ запрещен. Но мы то знаем что это допустимо. Лечится просто: * глядим в '''/var/log/messages''', видим там что-то вроде <source lang="bash"> # grep audit /var/log/messages|tail -n 1 Oct 11 11:03:11 hostname kernel: audit(1192089791.364:4563): avc: denied { name_connect } for pid=9956 comm="python" dest=8000 \ scontext=user_u:system_r:httpd_fastcgi_script_t:s0 tcontext=system_u:object_r:soundd_port_t:s0 tclass=tcp_socket </source> * эту строку "скармливаем" audit2why: <source lang="bash"> # grep audit /var/log/messages|tail -n 1|audit2why Oct 11 11:03:11 hostname kernel: audit(1192089791.364:4563): avc: denied { name_connect } for pid=9956 comm="python" dest=8000 \ scontext=user_u:system_r:httpd_fastcgi_script_t:s0 tcontext=system_u:object_r:soundd_port_t:s0 tclass=tcp_socket Was caused by: Missing or disabled TE allow rule. Allow rules may exist but be disabled by boolean settings; check boolean settings. You can see the necessary allow rules by running audit2allow with this audit message as input. </source> * нам советуется создать разрешающие правила. Как? Просто: <source lang="bash"> # grep audit /var/log/messages|tail -n 1|audit2allow -ve -M pythonTcp8000Moin ******************** IMPORTANT *********************** To make this policy package active, execute: semodule -i pythonTcp8000Moin.pp # semodule -i pythonTcp8000Moin.pp </source> * Вот и всё. Больше информации о укрощении SELinux в Fedora вы найдете в [http://danwalsh.livejournal.com/22347.html блоге Dan Walsh'a] - одного из основных разработчиков этой системы. [[Category:Установка и настройка]] [[Category:Администрирование]] c423431c02b55f03d7d07cd5556299318013ea81 Участник:VasileVsx 2 144 506 466 2011-09-01T20:19:37Z VasileVsx 2 wikitext text/x-wiki [[Temp/LinuxFest/previous]] http://skvidal.fedorapeople.org/misc/yum-remove-with-leaves.py gentoo.md debianmd.org Мона ещё вапрос? А какая разница между СД и ДВД версии? В двд побольше программ предустановленных? [11:25:38] Vasile: Esti versii dlia ustabonvki i versii Live. Live versia mojet biti razmerom s 1CD, a mojet i s razmerom DVD. Raznitsa v nabore softa. Live versiu mojno delati i samomu, dlia svoih nujd. S live versii mojnio zagruzitsia i rabotati ne ustanavlivaiu sistemu na hdd, a mojno i vsio eto ustanoviti na hdd. Ustanavlivaetsia vsio soderjimoe Live disca bez vozmojnosti viibora. (dobaviti udaliti soft mojno uje posle ustabovki). Live versiu mojno staviti/ispolizovati i s USB Flash/HDD. Ustanovo4naia versia mojet ispolizovatisa dlia ustanovki ili vostanovlenia. Mojet biti na 1 (2,3...) DVD libo mnogo CD (6 k primeru). Pozvoliaet vibirati soft ustanavlivaemii na hdd. [11:28:25] Vasile: Можно ставить и без CD/DVD вовсе. Самый удобный способ - записать LiveISO образ с помощью Fedora LiveUSB Creator на флешку и загрузится с нее. Если всё нравится - там же сразу можно систему записать/установить на жесткий А Fedora LiveUSB Creator мона запустить тока из под линха? [11:30:29] Vasile: Есть версия для Windows.https://fedorahosted.org/liveusb-creator/ [11:31:48] … dannie na flashke NE stiraiutsia [11:32:05] … prosto ubedisi 4to na nei esti mesto dlia ispolizuemogo obraza diska [11:33:16] xxxxx: ну у меня есть 2-х Гиговая флешка. А лайв-СД 700 Мб - думаювлезет? [11:33:31] Vasile: kone4no [11:34:08] xxx: т.е. нада програмку запустить сказать откуда брать образ - вставить лайв-Сд и он сам сделает загрзочную флешку ? [11:34:46] Vasile: da [11:35:20] xxxxxxx: А ещё - есть версии i.386 и x.86-64, я так понимаю что это 32 и 64-битные версии ОС. Но почитав форумы слышал мысли что для 64-битных не все программки есть. ЧТо посоветуешь поставить ан домашний комп? [11:35:33] Vasile: i386 [11:35:41] xxxxxн: понял.. [11:36:43] Vasile: hotia sam polizuiu toliko x86_64 (nujno dlia x86_64 kompiliatora v osnovnom) [11:36:51] … Server - toje na x86_64 [11:37:15] … esli operativki 3-4Gb i bolee - toje mojno 64bit [11:37:32] … 4to za videokarta u tebia? [11:37:42] xxx: Gforce 8100 [11:37:58] … она встроенная [11:38:02] Vasile: aga [11:38:22] … driver xorg-x11-drv-nvidia-96xx dlia tebia ne podhodit [11:38:40] … On dlia sovmestimosti so starimi videokartami [11:39:54] … dlia tvoei VC lu4she xorg-x11-drv-nvidia-173xx [11:40:20] … ili daje lu4she prosto xorg-x11-drv-nvidia ==== ssh DNAT vs. iptables ==== Pentru un DNAT (port forwarding) temporar și securizat utilizăm ssh: 1. în /etc/ssh/sshd_config pe gateway adăugăm opțiunea GatewayPorts yes 2. Reîncărcăm demon ssh - service sshd reload 3. Pe mașina locală după NAT rulăm client ssh în felul următor: $ ssh -R ip_extern:port_extern:ip_local:port_local gateway_adress Pentru depănare la ssh adăugăm opțiunea -v - verbose ==== Cum de nu lăsat "urme" ==== Fie avem access la sudo pe un computer. Avem nevoie ca unele operații a noastre să rămînă private. Pentru ca alt administrator să nu afle istoricul comenzilor administrative: 1. utilizăm sudo numai pentru a porni bash shell, și nu pentru a executa comenzi propriu zise. Toate comenzile lansate cu sudo nimeresc în jurnale de sistem. Deci utilizăm <code>sudo su -</code> pentru a ridica nivelul de privilegii 2. Toate comenzile bash (shell implicit în majoritatea sistemelor linux) se salvează în fișierul ~/.bash_history. Îl putem șterge, dar la ieșire el va fi recreat cu istoricul păstrat în memorie operativă. Deci pentru a ascunde lista comenzilor din sesiunea curentă noi "ucidem" shell current (mai exact - părintele său, comanda su) ;) <code>kill $PPID</code> ==== F10 upgrade ==== (14:52:53) skid: кстати ты случайно не знаешь что случилось с лэйаутами в f10 ? (14:53:13) skid: переключение на разные языки не очень работает нормально (15:11:53) vchelban@gmail.com/WorkFA0EBD46: Znaiu, vsio znaiu :D (15:12:04) vchelban@gmail.com/WorkFA0EBD46: Ia je v nei jivu s F10 Beta (15:12:39) vchelban@gmail.com/WorkFA0EBD46: Ti navernoe kinul svoi xorg.conf starii (15:13:00) vchelban@gmail.com/WorkFA0EBD46: Tak vot - diver klaviaturi nujno ispolizovati evdev (15:13:07) vchelban@gmail.com/WorkFA0EBD46: a ne keyboard, ne kbd (15:13:37) vchelban@gmail.com/WorkFA0EBD46: I voobshe - 4asto fedora 10 neploho rabotaet voobshe bez xorg.conf (15:13:56) vchelban@gmail.com/WorkFA0EBD46: Takje esli u tebia bil ~/.Xmodmap - lu4she eko poka otkliu4iti === Plymouth theme/plugin change === # yum install plymouth-system-theme # plymouth-set-default-theme charge # /usr/libexec/plymouth/plymouth-update-initrd http://morefedora.blogspot.com/2009/05/personalizzare-il-boot-con-plymouth.html === Prelucrăm colecția de fotografii === Pas 1: Sortare. Utilizăm gthumb pentru a separa fotografii cu calitate inferioară, private, destinate pentru publicare online,... etc. Cum? Editare->Preferințe->Taste Rapide. pentru, spre exemplu, taste 7,8,9 setăm 3 comenzi: mkdir -p %p/web/ ; ln %f %p/web/ mkdir -p %p/prelucrare/ ; mv %f %p/prelucrare/ mkdir -p %p/private/ ; mv %f %p/private/ navigăm prin dosar (b,n) și cu taste 7,8,9 marcăm fotografii spre publicare, prelucrare, private. Obținem în dosar web/ o grupă de fotografii pt publicare. aplicăm cu gthumb operația de scalare a imaginii (pt ai micsora dimensiunile) - Unelte /Scalează imagini. Imaini rezultante vor poseda același nume, dar nu și TAG'uri EXIF. le copiem cu ajutorul exiftool: cd dosar_web_scalat; for i in *.jpg; do exiftool -TagsFromFile ../web/$i -all:all $i;done http://pario.no/2008/09/02/rename-files-by-wildcard-pattern-and-correct-the-exif-timestamp-metadata/ ==== Cum de monitorizat sesiunea unui PC ==== yum install x11vnc xinetd cat <<EOF >/etc/xinetd.d/vnc-server # default: off service vnc-server { disable = no flags = IPv6 socket_type = stream wait = no user = green server = /usr/bin/x11vnc server_args = -display :0 -inetd -q -o /var/tmp/x11vnc.log -prog /usr/bin/x11vnc -shared log_on_failure += USERID } acum asigurăm access la distanță la TCP port 5900 test/test test2/test2 == Atenție la instalare mod_fcgid == Implicit, mod_fcgid nu are drept de scriere în /var/run/mod_fcgid deci - chown apache.apache /var/run/mod_fcgid c85c41b36799b3f308aa4a2be66028c8f70aaefb Как подружить Samba и контроллер домена Windows 2003 0 63 507 149 2011-10-05T16:30:28Z 87.248.191.50 0 адаптация - использовать DOMAIN\\user wikitext text/x-wiki {{Суперпользователь}} == Графическая интеграция == При помощи [http://sadms.sourceforge.net/ SADMS]. == Ручная интеграция == === Требования === Samba собранная с опциями: --with-ldap --with-ads --with-krb5 --with-pam --with-winbind или просто установите из rpm. Условимся что: '''192.168.0.1''' – server.domain.com – это сервер Windows 2003 '''192.168.0.10''' – client.domain.com – клиентская машина Linux с Samba === Настройка разрешения имен === Надеюсь что на вашем контроллере домена поднят DNS (Domain Names Server) с зонами прямого и обратного просмотра. Если поднят, то в файле /etc/resolv.conf прописываем следующее: <pre> search domain.com domain domain.com nameserver 192.168.0.1 </pre> Если же в сети нет DNS (что вряд ли) сервера - можно воспользоваться файлами hosts на обеих машинах. На машине в файл /etc/hosts добавляем: <pre> 192.168.0.1 server.domain.com server 192.168.0.10 client.domain.com client </pre> На контроллере домена в файле %Systemroot%\~System32\drivers\etc\hosts пишем следующее: <pre> 192.168.0.1 server server.domain.com 192.168.0.10 client client.domain.com </pre> %Systemroot% - папка WINNT или WINDOWS(на системном диске) === Настройка Kerberos === Часть этого документа использует DOMAIN.COM прописными буквами. Удостоверьтесь, что в вашем конфиге krb5.conf правильный регистр! Приводим файл krb5.conf в соответствие с настройками вашей сети(не забывайте про регистр!). <source lang="ini"> [libdefaults] default_realm = DOMAIN.COM [realms] SERVER.DOMAIN.COM = { kdc = server.domain.com } [domain_realms] .domain.com = DOMAIN.COM </source> После этого выполняем команду(необходимо знать пароль администратора КД): <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: NOTICE: ticket renewable lifetime is 1 week </source> Возможные проблемы на этом этапе: <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: krb5_get_init_creds: Client (Admin@DOMAIN.COM) unknown </source> Надо проверить правильность ввода логина\пароль админа. <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: krb5_get_init_creds: unable to reach any KDC in realm (DOMAIN.COM) </source> Проверьте правильность настроек DNS и конфига krb5.conf <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: krb5_get_init_creds: Clock skew too great </source> Рассинхронизация времени на КД и клиенте – выполните команду net time set(в linux) Желательно выполнять данную команду раз в неделю(можно через cron). === Настройка Samba === Пожалуй, самая легкая часть настройки. Выкладываю уже готовый к эксплуатации конфиг (с комментариями к тому, на что надо обратить внимание): <source lang="ini"> [global] log file = /var/log/samba/log.%m socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192 null passwords = yes #Разрешить пустые пароли interfaces = 192.168.0.10/255.255.255.0 #На каком интерфейсе работать hosts allow = 192.168.0. 127.0.0.1 #Хостам из каких сетей разрешено encrypt passwords = yes idmap uid = 10000-20000 idmap gid = 10000-20000 auth methods = winbind winbind enum groups = yes winbind enum users = yes winbind use default domain = yes name resolve order = hosts wins bcast lmhosts case sensitive = no dns proxy = no netbios name = client #NetBIOS имя машины server string = My Linux password server = server.domain.com #dns имя сервера win 2003 realm = DOMAIN.COM #Имя рилма client use spnego = yes client signing = yes local master = no domain master = no preferred master = no workgroup = DOMAIN #Укороченное имя домена debug level = 2 security = ads dos charset = 866 unix charset = UTF-8 #Кодировка ФС –UTF-8 или KOI8-R max log size = 50 os level = 0 wins server = 192.168.0.1 #Укажите здесь WINS сервер, если он есть [upload] comment = Upload path = /srv/smb/upload browseable = yes writeable = yes directory mask = 0777 create mask = 0666 valid users = @”Администраторы домена”, DOMAIN\Пользователь </source> === Входим в Active Directory === Убедившись, что на контроллере домена нет машин с именем, которое мы использовали в конфиге. Выполняем команду: <source lang="bash"> # net ads join -U Administrator </source> === Настройка Winbind === 1. Откроем файл /etc/nsswitch.conf для редактирования и найдем следующие строчки: <pre> passwd: compat shadow: compat group: compat </pre> 2. Заменим их на: <pre> passwd: compat winbind shadow: compat group: compat winbind </pre> 3. Перезапустим сервис winbind: <source lang="bash"> # service winbind restart </source> 4. Проверим работу: <source lang="bash"> # wbinfo -t </source> если вывод: <pre> checking the trust secret via RPC calls succeeded </pre> значит доверительная учетная запись компьютера в домене создана. 5. Проверка пользователей и групп: <source lang="bash"> # wbinfo -u </source> <source lang="bash"> # wbinfo -g </source> должно вывести пользователей домена и группы домена. 6. Проверяем аутентификацию в домене: <source lang="bash"> # wbinfo -a user%123 </source> где ''user'' - пользователь домена, ''123'' - пароль. Если ответ: <pre> plaintext password authentication succeeded сhallenge/response password authentication succeeded </pre> значит аутентификация в домене работает. 7. Проверяем, чтобы наш Linux видел пользователей домена: <source lang="bash"> # id DOMAIN\\user </source> должно вывести id пользователя домена и к каким группам он относится. === Настройка PAM === Перед выполнением нижеперечисленных действий рекомендуется сделать бэкап всех редактируемых файлов. Файл /etc/pam.d/samba не требует редактирования, т.к. он уже содержит необходимое. Редактируем /etc/pam.d/login <pre> #%PAM-1.0 auth required pam_securetty.so auth sufficient pam_winbind.so auth sufficient pam_unix.so use_first_pass auth required pam_stack.so service=system-auth auth required pam_nologin.so account sufficient pam_winbind.so account required pam_stack.so service=system-auth password required pam_stack.so service=system-auth session required pam_stack.so service=system-auth session optional pam_console.so </pre> Теперь на машину с linux можно заходить используя доменные аккаунты(DOMAIN\User). === Поддержка SSH === Для того, чтобы можно было использовать доменные аккаунты для входа через ssh в файле /etc/pam.d/sshd делаем изменения аналогично /etc/pam.d/login. === Заключение === Ну вот и все. Теперь можно запустить Samba: <source lang="bash"> # service smb start # service nmb start # service winbind start </source> В случае неполадок смотрим: /var/log/samba [[Category:Установка и настройка]] [[Category:Настройка системы]] b27f1bae0483966ff27d7df87e3ba58694b71630 575 507 2012-03-27T13:10:31Z VasileVsx 2 Standard fedora auth setup wikitext text/x-wiki {{Суперпользователь}} == Стандартный метод == # Установить '''samba-winbind, samba, krb5-workstation, authconfig-gtk, sssd, sssd-client''' # запустить '''system-config-authentication''' # ввести настройки и выполнить вход: [[Файл:Fedora-auth-identity.jpg|300px|thumb|left|Identity options]] [[Файл:Fedora-auth-advanced.jpg|300px|thumb|left|Advanced options]] == Графическая интеграция == При помощи [http://sadms.sourceforge.net/ SADMS]. == Ручная интеграция == === Требования === Samba собранная с опциями: --with-ldap --with-ads --with-krb5 --with-pam --with-winbind или просто установите из rpm. Условимся что: '''192.168.0.1''' – server.domain.com – это сервер Windows 2003 '''192.168.0.10''' – client.domain.com – клиентская машина Linux с Samba === Настройка разрешения имен === Надеюсь что на вашем контроллере домена поднят DNS (Domain Names Server) с зонами прямого и обратного просмотра. Если поднят, то в файле /etc/resolv.conf прописываем следующее: <pre> search domain.com domain domain.com nameserver 192.168.0.1 </pre> Если же в сети нет DNS (что вряд ли) сервера - можно воспользоваться файлами hosts на обеих машинах. На машине в файл /etc/hosts добавляем: <pre> 192.168.0.1 server.domain.com server 192.168.0.10 client.domain.com client </pre> На контроллере домена в файле %Systemroot%\~System32\drivers\etc\hosts пишем следующее: <pre> 192.168.0.1 server server.domain.com 192.168.0.10 client client.domain.com </pre> %Systemroot% - папка WINNT или WINDOWS(на системном диске) === Настройка Kerberos === Часть этого документа использует DOMAIN.COM прописными буквами. Удостоверьтесь, что в вашем конфиге krb5.conf правильный регистр! Приводим файл krb5.conf в соответствие с настройками вашей сети(не забывайте про регистр!). <source lang="ini"> [libdefaults] default_realm = DOMAIN.COM [realms] SERVER.DOMAIN.COM = { kdc = server.domain.com } [domain_realms] .domain.com = DOMAIN.COM </source> После этого выполняем команду(необходимо знать пароль администратора КД): <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: NOTICE: ticket renewable lifetime is 1 week </source> Возможные проблемы на этом этапе: <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: krb5_get_init_creds: Client (Admin@DOMAIN.COM) unknown </source> Надо проверить правильность ввода логина\пароль админа. <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: krb5_get_init_creds: unable to reach any KDC in realm (DOMAIN.COM) </source> Проверьте правильность настроек DNS и конфига krb5.conf <source lang="bash"> # kinit Admin@DOMAIN.COM Admin@DOMAIN.COM 's Password: kinit: krb5_get_init_creds: Clock skew too great </source> Рассинхронизация времени на КД и клиенте – выполните команду net time set(в linux) Желательно выполнять данную команду раз в неделю(можно через cron). === Настройка Samba === Пожалуй, самая легкая часть настройки. Выкладываю уже готовый к эксплуатации конфиг (с комментариями к тому, на что надо обратить внимание): <source lang="ini"> [global] log file = /var/log/samba/log.%m socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192 null passwords = yes #Разрешить пустые пароли interfaces = 192.168.0.10/255.255.255.0 #На каком интерфейсе работать hosts allow = 192.168.0. 127.0.0.1 #Хостам из каких сетей разрешено encrypt passwords = yes idmap uid = 10000-20000 idmap gid = 10000-20000 auth methods = winbind winbind enum groups = yes winbind enum users = yes winbind use default domain = yes name resolve order = hosts wins bcast lmhosts case sensitive = no dns proxy = no netbios name = client #NetBIOS имя машины server string = My Linux password server = server.domain.com #dns имя сервера win 2003 realm = DOMAIN.COM #Имя рилма client use spnego = yes client signing = yes local master = no domain master = no preferred master = no workgroup = DOMAIN #Укороченное имя домена debug level = 2 security = ads dos charset = 866 unix charset = UTF-8 #Кодировка ФС –UTF-8 или KOI8-R max log size = 50 os level = 0 wins server = 192.168.0.1 #Укажите здесь WINS сервер, если он есть [upload] comment = Upload path = /srv/smb/upload browseable = yes writeable = yes directory mask = 0777 create mask = 0666 valid users = @”Администраторы домена”, DOMAIN\Пользователь </source> === Входим в Active Directory === Убедившись, что на контроллере домена нет машин с именем, которое мы использовали в конфиге. Выполняем команду: <source lang="bash"> # net ads join -U Administrator </source> === Настройка Winbind === 1. Откроем файл /etc/nsswitch.conf для редактирования и найдем следующие строчки: <pre> passwd: compat shadow: compat group: compat </pre> 2. Заменим их на: <pre> passwd: compat winbind shadow: compat group: compat winbind </pre> 3. Перезапустим сервис winbind: <source lang="bash"> # service winbind restart </source> 4. Проверим работу: <source lang="bash"> # wbinfo -t </source> если вывод: <pre> checking the trust secret via RPC calls succeeded </pre> значит доверительная учетная запись компьютера в домене создана. 5. Проверка пользователей и групп: <source lang="bash"> # wbinfo -u </source> <source lang="bash"> # wbinfo -g </source> должно вывести пользователей домена и группы домена. 6. Проверяем аутентификацию в домене: <source lang="bash"> # wbinfo -a user%123 </source> где ''user'' - пользователь домена, ''123'' - пароль. Если ответ: <pre> plaintext password authentication succeeded сhallenge/response password authentication succeeded </pre> значит аутентификация в домене работает. 7. Проверяем, чтобы наш Linux видел пользователей домена: <source lang="bash"> # id DOMAIN\\user </source> должно вывести id пользователя домена и к каким группам он относится. === Настройка PAM === Перед выполнением нижеперечисленных действий рекомендуется сделать бэкап всех редактируемых файлов. Файл /etc/pam.d/samba не требует редактирования, т.к. он уже содержит необходимое. Редактируем /etc/pam.d/login <pre> #%PAM-1.0 auth required pam_securetty.so auth sufficient pam_winbind.so auth sufficient pam_unix.so use_first_pass auth required pam_stack.so service=system-auth auth required pam_nologin.so account sufficient pam_winbind.so account required pam_stack.so service=system-auth password required pam_stack.so service=system-auth session required pam_stack.so service=system-auth session optional pam_console.so </pre> Теперь на машину с linux можно заходить используя доменные аккаунты(DOMAIN\User). === Поддержка SSH === Для того, чтобы можно было использовать доменные аккаунты для входа через ssh в файле /etc/pam.d/sshd делаем изменения аналогично /etc/pam.d/login. === Заключение === Ну вот и все. Теперь можно запустить Samba: <source lang="bash"> # service smb start # service nmb start # service winbind start </source> В случае неполадок смотрим: /var/log/samba [[Category:Установка и настройка]] [[Category:Настройка системы]] 2b7b00028bd21b8da03e09c2074c17d4ee0c2370 Заглавная страница 0 17 533 356 2011-11-20T10:42:47Z Trinaqxdru 101 wikitext text/x-wiki etter than I can. t to get on the ball. WD#. ioned by a passel of associates. ve. few real life examples. w to take care of this problem soon. st readers because it's effortless. t also teach them that in connection with this one and this but I have found a topic to be immense. re else amateurs get at seasonal singles free dating sites coupons? ze this I must try to confront this as best as they can. like a duck, quacks like a duck, and looks like a duck, it must be a duck. nly comprehend quite a bit about that). s and doing this? o get top dating sites. what do gentlewomen pick up noted [http://thebee-line.com/BeeWiki/index.php?title=That_are_gems australian dating sites] catalogs? as a good time to bring that contingency up. se premium free dating chat rooms methods? titudes imagine that this has nothing to do with some addition. is. o using that. eally blow the lid off of the free herpes dating sites myth once and for all. e way to get your hands on more types of dating sites free. ers hit upon low cost on line dating sites deals? scover that. eyors of canadian dating sites. the best dating sites. n't, to say the least, quite touching. . is was only one of those days. in this opinion. his sort of [http://www.modelingtime.com/scalemodelpedia/index.php?title=U_will_think_of_italian_dating_sites_differently senior dating sites free] this afternoon. hat commission is tricky. re's a black sheep in every flock. oment, that is hot. mples. is contrivance is almost an overwhelming force today. sure that you are going to be choosing the most practical all free dating sites for you. ctly what I mean but also I suggest closely scrutinizing the guarantees. w it sounds really time consuming but doing this is worth it. t touching on my concept. onal results. a fragile economy when it is identified with free military dating sites. I have to decode your feelings with reference to [http://www.ragnaturn.com/wiki/index.php?title=Ut_a_single_dating_sites_that_nullifies_a_deportme best online dating site]. at you were working on has 100% free dating site. ll look at free date sites in a like manner. e incoherent concerning doing that. e tired of hearing that. will remove some of the stigma from senior dating site. he best possible solution yet here are a couple of actual secrets. to discover if they are providing [http://freedatingsites.us.com/ free dating site] also. sting 2 ways to work with mormon dating sites. c51260482f549f36b6e1639437fbb84d9fc9bd6b 534 533 2011-11-20T21:10:39Z VasileVsx 2 Anularea modificării 533 făcute de [[Special:Contributions/Trinaqxdru|Trinaqxdru]] ([[User talk:Trinaqxdru|Discuţie]]) wikitext text/x-wiki == FedoraMD Wiki == '''Добро пожаловать в мир Fedora Linux.''' Здесь Вы найдёте часто задаваемые вопросы и ответы на них, определённые настройки и недокументированные действия применимые не только к [[Fedora Linux]], но и к другим дистрибутивам Linux. Вы найдёте несколько [[:Category:Статьи|статей]], которые Вам помогут разобраться в разнообразном мире Linux. Сайт построен на базе технологий [[wikipedia:ru:Wiki|Wiki]]. В каждой теме Вы можете отписывать коментарии. После регистрации Вы можете менять пользовательские настройки по умолчанию (язык, тема, отображение меню, комментариев). Очень удобная функция - [[Служебная:Search|поиск]]. Поиск производиться по всем статьям. К примеру, если вы дадите запрос по слову Linux, то найдёте все страницы содержащие данное слово. == Разделы == * [[:Category:Установка и настройка|Установка и настройка]] * [[:Category:Программное обеспечение|Программное обеспечение]] * [[FAQ]] * [[:Category:Статьи|Статьи]] * [[:Category:Репозитории|Репозитории]] [[ro:Pagina_principală]] 91cbd2759c7c82008829e02140b853ed5841a4b1 Файл:Fedora-auth-identity.jpg 6 247 573 2012-03-27T12:59:50Z VasileVsx 2 Identity and authetification wikitext text/x-wiki Identity and authetification 4d2e1c64c3566807735cefed796338bb0ff5296a Файл:Fedora-auth-advanced.jpg 6 248 574 2012-03-27T13:00:42Z VasileVsx 2 ActiveDirectory: Advanced option wikitext text/x-wiki ActiveDirectory: Advanced option fdc8a0ff50707bceaf650a38c4c2a2dacb05f4ce Участник:Worwebin 2 249 581 2018-10-30T15:16:05Z Worwebin 151 Новая страница: ««Studio Webmaster TM» — este o echipă de profesioniști în domeniul Web-proiectelor, creării site-urilor și promovării lor, de dezvoltare a software, baz…» wikitext text/x-wiki «Studio Webmaster TM» — este o echipă de profesioniști în domeniul Web-proiectelor, creării site-urilor și promovării lor, de dezvoltare a software, bazelor de date și a sistemelor de afaceri, care permit raționalizarea procesului de conducere a întreprinderii. Website [https://webmaster.md/ webmaster.md] 9833986ebbaecf8311d25339c42b1e1a739dd426 Обсуждение участника:95.65.73.34 3 250 582 2018-11-12T12:08:45Z Robemayn 152 Новая страница: «[http://cadourionline.md cadourionline.md] oferă livrarea de flori și cadouri fără zile de odihnă pe toată Moldova. Aveți nevoie pentru a trimite flori onl…» wikitext text/x-wiki [http://cadourionline.md cadourionline.md] oferă livrarea de flori și cadouri fără zile de odihnă pe toată Moldova. Aveți nevoie pentru a trimite flori online? Noi propunem un asortiment bogat de cadouri, dulciuri, jucării moi, livrare cadouri Chișinău și livrare flori Moldova, precum și livrarea celorlalte mărfuri, în diferite localități. Magazinul nostru de livrare cadouri online Chisinau este cea mai bună alegere pentru a face surprize celor apropiați și dragi. f4ad037c74130753c8b5258518b6cb8d01a42741 Участник:Robemayn 2 251 583 2018-11-12T12:09:40Z Robemayn 152 Новая страница: «[http://cadourionline.md cadourionline.md] oferă livrarea de flori și cadouri fără zile de odihnă pe toată Moldova. Aveți nevoie pentru a trimite flori onl…» wikitext text/x-wiki [http://cadourionline.md cadourionline.md] oferă livrarea de flori și cadouri fără zile de odihnă pe toată Moldova. Aveți nevoie pentru a trimite flori online? Noi propunem un asortiment bogat de cadouri, dulciuri, jucării moi, livrare cadouri Chișinău și livrare flori Moldova, precum și livrarea celorlalte mărfuri, în diferite localități. Magazinul nostru de livrare cadouri online Chisinau este cea mai bună alegere pentru a face surprize celor apropiați și dragi. f4ad037c74130753c8b5258518b6cb8d01a42741 Участник:Serbgheorg 2 252 584 2018-11-19T09:13:50Z Serbgheorg 153 Новая страница: «Подготовься к зиме заранее, купи [https://autoshina.md зимние шины в Кишиенёве] по низкой цене. Autoshi…» wikitext text/x-wiki Подготовься к зиме заранее, купи [https://autoshina.md зимние шины в Кишиенёве] по низкой цене. Autoshina предлагает на выбор ряд услуг, начиная с хранения шин и заканчивая выездным шиномонтажом! ffa933bffade0f6c02c47db6cb9fa1ca2159514c Участник:Sionesperti 2 253 585 2018-12-05T13:48:49Z Sionesperti 154 Новая страница: «Aveți un site dar nu știți de ce aveți nevoie pentru ca acesta să devină profitabil și eficient? [URL=https://seostudio.md]promovarea site-ului[/URL] dvs (…» wikitext text/x-wiki Aveți un site dar nu știți de ce aveți nevoie pentru ca acesta să devină profitabil și eficient? [URL=https://seostudio.md]promovarea site-ului[/URL] dvs (SEO) este soluția ideală pentru a ascensiona site-ul dvs. în Top-ul motoarelor de căutare. «SEO studio» are cele mai eficiente instrumente IT pentru dezvoltarea business-ului dvs. 00e2bd258e8041e6c834a925ea01c0b8f41ffd78 586 585 2018-12-05T13:49:14Z Sionesperti 154 wikitext text/x-wiki Aveți un site dar nu știți de ce aveți nevoie pentru ca acesta să devină profitabil și eficient? [https://seostudio.md promovarea site-ului] dvs (SEO) este soluția ideală pentru a ascensiona site-ul dvs. în Top-ul motoarelor de căutare. «SEO studio» are cele mai eficiente instrumente IT pentru dezvoltarea business-ului dvs. d3589948027aba6342b1b7a4dd756d470ec59eb3 Участник:Hotelanvelopemd 2 254 587 2020-05-28T11:24:47Z Hotelanvelopemd 155 Новая страница: «'''Хранение шин в Кишиневе''' Согласно законодательству Республики Молдова, владелец авт…» wikitext text/x-wiki '''Хранение шин в Кишиневе''' Согласно законодательству Республики Молдова, владелец автомобиля должен иметь два комплекта шин, летний и зимний. Но со сменой шин на определенный период возникает вопрос: что делать с замененными шинами? Исходя из этого, шиномонтаж на колесах Hotel-Anvelope.md создала услугу шинный отель. Другими словами, это специально спроектированное пространство, отвечающее всем правилам, необходимым для безопасного хранения. Конечно, вы можете хранить свои шины в своем собственном доме, скажем, на балконе, в гараже или в шкафу, но никто не может предсказать, не будет ли повреждено качество шин после длительного пребывания в нерекомендованных условиях. В нашем отеле шин они постоянно контролируются специалистами, хранятся в специальном месте в соответствии с их типом, влажность полностью исключается, и выбирается оптимальная температура хранения. Кроме того, цена на [https://hotel-anvelope.md/: хранение шин] довольно выгодна и доступна любому покупателю. Услуга хранения шин доступна для всех жителей Республики Молдова. Неважно, в каком регионе Молдовы вы живете, мы приедем к вам в любое время, чтобы забрать шины на хранение. В конце указанного срока или в зависимости от желания клиента мы доставим шины обратно. Сервис доступен днем ​​и ночью, и наши консультанты будут готовы ответить на любые вопросы, касающиеся хранения или других услуг, предоставляемых шиномонтажом на выезд. 47b07061adc46d5e3355a295016a392d46f56967 588 587 2020-05-28T11:25:03Z Hotelanvelopemd 155 wikitext text/x-wiki '''Хранение шин в Кишиневе''' Согласно законодательству Республики Молдова, владелец автомобиля должен иметь два комплекта шин, летний и зимний. Но со сменой шин на определенный период возникает вопрос: что делать с замененными шинами? Исходя из этого, шиномонтаж на колесах Hotel-Anvelope.md создала услугу шинный отель. Другими словами, это специально спроектированное пространство, отвечающее всем правилам, необходимым для безопасного хранения. Конечно, вы можете хранить свои шины в своем собственном доме, скажем, на балконе, в гараже или в шкафу, но никто не может предсказать, не будет ли повреждено качество шин после длительного пребывания в нерекомендованных условиях. В нашем отеле шин они постоянно контролируются специалистами, хранятся в специальном месте в соответствии с их типом, влажность полностью исключается, и выбирается оптимальная температура хранения. Кроме того, цена на [https://hotel-anvelope.md/ : хранение шин] довольно выгодна и доступна любому покупателю. Услуга хранения шин доступна для всех жителей Республики Молдова. Неважно, в каком регионе Молдовы вы живете, мы приедем к вам в любое время, чтобы забрать шины на хранение. В конце указанного срока или в зависимости от желания клиента мы доставим шины обратно. Сервис доступен днем ​​и ночью, и наши консультанты будут готовы ответить на любые вопросы, касающиеся хранения или других услуг, предоставляемых шиномонтажом на выезд. d98b66da0efdbbd2e2152ee921fd443ceca35e16 589 588 2020-05-28T11:25:22Z Hotelanvelopemd 155 wikitext text/x-wiki '''Хранение шин в Кишиневе''' Согласно законодательству Республики Молдова, владелец автомобиля должен иметь два комплекта шин, летний и зимний. Но со сменой шин на определенный период возникает вопрос: что делать с замененными шинами? Исходя из этого, шиномонтаж на колесах Hotel-Anvelope.md создала услугу шинный отель. Другими словами, это специально спроектированное пространство, отвечающее всем правилам, необходимым для безопасного хранения. Конечно, вы можете хранить свои шины в своем собственном доме, скажем, на балконе, в гараже или в шкафу, но никто не может предсказать, не будет ли повреждено качество шин после длительного пребывания в нерекомендованных условиях. В нашем отеле шин они постоянно контролируются специалистами, хранятся в специальном месте в соответствии с их типом, влажность полностью исключается, и выбирается оптимальная температура хранения. Кроме того, цена на [https://hotel-anvelope.md/ хранение шин] довольно выгодна и доступна любому покупателю. Услуга хранения шин доступна для всех жителей Республики Молдова. Неважно, в каком регионе Молдовы вы живете, мы приедем к вам в любое время, чтобы забрать шины на хранение. В конце указанного срока или в зависимости от желания клиента мы доставим шины обратно. Сервис доступен днем ​​и ночью, и наши консультанты будут готовы ответить на любые вопросы, касающиеся хранения или других услуг, предоставляемых шиномонтажом на выезд. 15964d3eb03c2078c2aa44b4ab89043cc2b6ce15 Участник:Casaauto 2 255 590 2020-06-17T11:44:41Z Casaauto 156 Новая страница: «[Шины https://casaauto.md] играют очень важную роль в случае аварий, вызванных техническими непол…» wikitext text/x-wiki [Шины https://casaauto.md] играют очень важную роль в случае аварий, вызванных техническими неполадками. Управление автомобилем происходит посредством четырех небольших площадей соприкосновения между шинами и дорожным покрытием. Поэтому можно смело утверждать, что шины являются одним из важнейших компонентов Вашего автомобиля. От них зависит управляемость, торможение и ускорение. Несколько советов: • Проверяйте глубину протектора шины! В республике Эстония наименьшая разрешенная остаточная глубина протектора составляет на летних шинах 1,6 мм и на зимних шинах – 3,0 мм. Такая глубина должна быть измеряема, по крайней мере, на ¾ протяженности от всей поверхности протектора. Однако, и такая «разрешенная шина» не гарантирует чувства безопасности. Мы считаем, что с точки зрения безопасности дорожного движения, разрешенные остаточные глубины могли бы быть соответственно – 2,5 мм и 5,0 мм. • Проверяйте давление в шинах! Поскольку при движении воздух в шинах нагревается и расширяется, то лучшее время для измерения давления – утром, перед тем как начать движение. В случае избыточного давления шины становятся чрезмерно жесткими, так как уменьшается и так небольшая площадь соприкосновения с дорожным покрытием. В результате, недостаточное сцепление и плохая управляемость автомобиля. Признаком пониженного давления является «плавание» автомобиля на дорожном покрытии и «тугой» руль. Более того, значительно увеличивается расход топлива. • Регулярно проверяйте, чтобы боковые поверхности шин не были повреждены, в том числе не было разрезов, «грыж» и прочих неполадок. • Не забывайте проверять состояние запасного колеса. Оно редко используется, но все же. • Раз в год желательно проходить проверку на стенде развал-схождения. В основном, это связано с условиями наших дорог. Неправильное схождение колес в случае нормального управления является основной причиной неравномерного износа шины. Таким образом, игнорирование стенда развал-схождения не является экономией. • Балансирование колес – это не «дополнительная работа», придуманная шиномонтажными мастерскими, которая бы позволила выставить Вам больший счет. От этого зависит безопасность движения (длина тормозного пути) и Ваше удобство. Поэтому мы рекомендуем проверять колеса чаще, чем 2 раза в год во время обязательной смены. • Покупайте и устанавливайте [летние шины https://casaauto.md] в начале осени, поскольку из-за опасности аквапланирования Вам может понадобиться более глубокий протектор шины именно в это время года. Также присутствует и экономический момент, поскольку именно на этот период, как правило, выпадают специальные предложения шиномонтажных компаний. • Установив новые шипованные шины, избегайте резкого торможения, ускорения и лихого маневрирования первые несколько сотен километров. Это необходимо для того, чтобы шипы «сели» на свои места. Далее, мы объясним, что означают один или другой номер или значение на шине. Например: 195/65 R15 90H • 195 – ширина шины в мм • 65 – высота шины (профиль), выраженная в процентном соотношении относительно ширины. В данном случае она составляет 65% от 195 мм, или же 126,8 мм • R – радиальная конструкция шины • 15 – диаметр диска в дюймах • 90 – индекс нагрузки на шину или допустимая нагрузка (в кг) на одно колесо автомобиля (см. таблицу «Индекс нагрузки) • H – индекс максимальной скорости (см. таблицу «Индексы скорости») индекс скорости ограничения скорости b98dcc4ae7543461939e99e37f51887ba6865e58 591 590 2020-06-17T11:45:08Z Casaauto 156 wikitext text/x-wiki [https://casaauto.md Шины] играют очень важную роль в случае аварий, вызванных техническими неполадками. Управление автомобилем происходит посредством четырех небольших площадей соприкосновения между шинами и дорожным покрытием. Поэтому можно смело утверждать, что шины являются одним из важнейших компонентов Вашего автомобиля. От них зависит управляемость, торможение и ускорение. Несколько советов: • Проверяйте глубину протектора шины! В республике Эстония наименьшая разрешенная остаточная глубина протектора составляет на летних шинах 1,6 мм и на зимних шинах – 3,0 мм. Такая глубина должна быть измеряема, по крайней мере, на ¾ протяженности от всей поверхности протектора. Однако, и такая «разрешенная шина» не гарантирует чувства безопасности. Мы считаем, что с точки зрения безопасности дорожного движения, разрешенные остаточные глубины могли бы быть соответственно – 2,5 мм и 5,0 мм. • Проверяйте давление в шинах! Поскольку при движении воздух в шинах нагревается и расширяется, то лучшее время для измерения давления – утром, перед тем как начать движение. В случае избыточного давления шины становятся чрезмерно жесткими, так как уменьшается и так небольшая площадь соприкосновения с дорожным покрытием. В результате, недостаточное сцепление и плохая управляемость автомобиля. Признаком пониженного давления является «плавание» автомобиля на дорожном покрытии и «тугой» руль. Более того, значительно увеличивается расход топлива. • Регулярно проверяйте, чтобы боковые поверхности шин не были повреждены, в том числе не было разрезов, «грыж» и прочих неполадок. • Не забывайте проверять состояние запасного колеса. Оно редко используется, но все же. • Раз в год желательно проходить проверку на стенде развал-схождения. В основном, это связано с условиями наших дорог. Неправильное схождение колес в случае нормального управления является основной причиной неравномерного износа шины. Таким образом, игнорирование стенда развал-схождения не является экономией. • Балансирование колес – это не «дополнительная работа», придуманная шиномонтажными мастерскими, которая бы позволила выставить Вам больший счет. От этого зависит безопасность движения (длина тормозного пути) и Ваше удобство. Поэтому мы рекомендуем проверять колеса чаще, чем 2 раза в год во время обязательной смены. • Покупайте и устанавливайте [https://casaauto.md летние шины] в начале осени, поскольку из-за опасности аквапланирования Вам может понадобиться более глубокий протектор шины именно в это время года. Также присутствует и экономический момент, поскольку именно на этот период, как правило, выпадают специальные предложения шиномонтажных компаний. • Установив новые шипованные шины, избегайте резкого торможения, ускорения и лихого маневрирования первые несколько сотен километров. Это необходимо для того, чтобы шипы «сели» на свои места. Далее, мы объясним, что означают один или другой номер или значение на шине. Например: 195/65 R15 90H • 195 – ширина шины в мм • 65 – высота шины (профиль), выраженная в процентном соотношении относительно ширины. В данном случае она составляет 65% от 195 мм, или же 126,8 мм • R – радиальная конструкция шины • 15 – диаметр диска в дюймах • 90 – индекс нагрузки на шину или допустимая нагрузка (в кг) на одно колесо автомобиля (см. таблицу «Индекс нагрузки) • H – индекс максимальной скорости (см. таблицу «Индексы скорости») индекс скорости ограничения скорости 47cf776af65f9dbe3be709ae70491a7db6437f3e